{Page} affects the active sheet(s). The next table lists the possible settings for Property. To display a property description with syntax, choose the property in the following list:
Property Description
Conditional_Color Changes the color of specific types of data in the active sheet: values above or below a specified range, and ERR values
Default_Width Sets the default width of all columns in the active sheet
Display Sets display characteristics for the active sheet
Name Controls the name of the active sheet
Protection Turns on protection in the active sheet
Tab_Color Changes the tab color of the active sheet
Zoom_Factor Lets you pull back to see a whole printed page, or focus in on the detail of a few cells
You can use {Page?} or {Page!} to display the Active Sheet dialog box. {Page?} lets you manipulate the dialog box, whereas {Page!} relies on the macro to manipulate it.
{Page.Conditional_Color} is equivalent to thesheet property Conditional Color, which makes cells change text color (based on the value in the cell). Each color specified in these commands is a number from 0 to 15, corresponding to which color of the notebook palette to use (1 through 16).
Example
The following macro makes negative values red, values greater than 10,000 green, ERR cells cyan, and positive values less than 10,000 black (assuming the default notebook palette is used).
{Page.Conditional_Color "Yes,0,10000,4,3,5,7"}
Options
{Page.Conditional_Color "Enable, SmallVal, GreatVal, BelowColor, NormalColor, AboveColor, ERRColor"} Changes the color of specific types of data in the active sheet: values above or below a specified range, and ERR values
{Page.Conditional_Color.Above_Normal_Color 0-15} Sets the color of cells whose values are above the Greatest Normal Value
{Page.Conditional_Color.Below_Normal_Color 0-15} Sets the color of cells whose values are below the Smallest Normal Value
{Page.Conditional_Color.Enable Yes|No} Indicates whether to use the conditional colors set with this property
{Page.Conditional_Color.ERR_Color 0-15} Specifies the color to use for ERR and NA values generated by formula errors
{Page.Conditional_Color.Greatest_Normal_Value Value} Specifies the largest value of the range of values you consider normal
{Page.Conditional_Color.Normal_Color 0-15} Sets the color of cells whose value falls within the range set by the Smallest Normal Value and the Greatest Normal Value
{Page.Conditional_Color.Smallest_Normal_Value Value} Specifies the smallest value of the range of values you consider normal
{Page.Default_Width}
Syntax
{Page.Default_Width Width}
PerfectScript Syntax
Page_Default_Width (Width:Numeric)
Description
{Page.Default_Width} is equivalent to the sheet property Default Width. It sets the default column width of the active sheet. Width is the new column width in twips (a twip is 1/1440th of an inch).
Example
{Page.Default_Width "720"} makes the default column width a half inch (720 twips).
{Page.Display} is equivalent to the sheet property Display, which sets the display of zeros, borders, and grid lines. The arguments of {Page.Display} (which sets all options of the Display property in one command) use the same syntax as those in the {Page.Display.Option} commands. All {Page.Display} arguments take Yes|No string values.
Example
The following macro displays zero values on the sheet, but hides borders and grid lines.
{Page.Display "Yes,No,No,No,No"}
Options
{Page.Display DisplayZeros?(Yes|No), RowBorders?(Yes|No), ColumnBorders?(Yes|No), HorzGridLines?(Yes|No), VertGridLines?(Yes|No)} Sets display characteristics for the active sheet
{Page.Display.Borders "RowBorders?(Yes|No), ColumnBorders?(Yes|No)} Turns border options off and on in the active sheet
{Page.Display.Borders.Column_Borders Yes|No} Turns column borders off and on in the active sheet
{Page.Display.Borders.Row_Borders Yes|No} Turns row borders off and on in the active sheet
{Page.Display.Display_Zeros Yes|No} Suppresses display of any value in the active sheet that exactly equals zero
{Page.Display.Grid_Lines "HorizGridLines?(Yes|No), VertGridLines?(Yes|No)"} Turns spreadsheet grid off and on in the active sheet
{Page.Display.Grid_Lines.Horizontal Yes|No} Turns horizontal spreadsheet grid off and on in the active sheet
{Page.Display.Grid_Lines.Vertical Yes|No} Turns vertical spreadsheet grid off and on in the active sheet
{Page.Name}
Syntax
{Page.Name NewName}
PerfectScript Syntax
Page_Name (NewName:String)
Description
{Page.Name NewName} is equivalent to the sheet property Name. It sets the name of the active sheet to NewName.
{Page.Protection} is equivalent to the sheet property Protection. It enables or disables cell and object protection on the active sheet.
Options
{Page.Protection "CellLocking?(Yes|No), ObjectLocking?(Yes|No)"} Turns on protection in the active sheet
{Page.Protection.Cells Yes|No} Protects all cell entries in the active sheet
{Page.Protection.Objects Yes|No} Protects all objects in the active sheet
{Page.Tab_Color}
Syntax
{Page.Tab_Color "Red, Green, Blue, UseRGB?"}
PerfectScript Syntax
Page_Tab_Color (Settings:String)
Description
{Page.Tab_Color} changes the tab color of the active sheet; Red, Green, and Blue are integers from 0 to 255.
{Page.Zoom_Factor}
Syntax
{Page.Zoom_Factor 10-400}
PerfectScript Syntax
Page_Zoom_Factor (Factor:Numeric)
Description
{Page.Zoom_Factor} sets the zoom factor of the active sheet (from 10% to 400%). This setting is for display only and does not affect printed output.
{PageViewGoto}
Description
Switches from either the Objects Sheet or the sheet in Draft mode to Page View.
{PANELOFF}
Description
{PANELOFF} disables normal display of menus and prompts during macro execution when Quattro Pro's Macro Suppress-Redraw property is set to None. It can significantly speed up execution for macros that use keystrokes to walk through menus, since it saves Quattro Pro the time normally needed to draw its menus on the screen. Its effect is canceled by Quattro Pro once the macro stops executing, so you need not worry about locking macro users out of the menus. To cancel its effect during macro execution, use {PANELON}.
{PANELOFF} does not disable menus created by {MENUCALL} and {MENUBRANCH} or subroutine calls that use menus or dialog boxes. Use this command with {WINDOWSOFF} to completely disable normal screen updating.
{PANELON}
Description
{PANELON} enables display of menus and prompts that have been disabled with {PANELOFF}. {PANELON} has no effect if used without an accompanying {PANELOFF}. Therefore, it can be used repeatedly with no ill effects.
Use this command with {WINDOWSON} to completely restore normal screen updating.
Lets you specify whether or not to skip the first character in a line of text.
Parameter
Apply 0 Do not skip the first character.
1 Skip the first character.
{ParseExpert.TextQualifier}
Syntax
{ParseExpert.TextQualifier Type}
PerfectScript Syntax
ParseExpert_TextQualifier (Type: String)
Description
Lets you specify the character that appears before and after any instance of data that contains the character specified by Other.
Parameter
Type "SingleQuote"
"DoubleQuote"
"None"
{ParseExpert.ValueQualifier}
Syntax
{ParseExpert.ValueQualifier Type}
PerfectScript Syntax
ParseExpert_ValueQualifier (Type?: String)
Description
Lets you specify the character that appears before and after any instance of data that should be parsed as a value.
Parameter
Type "SingleQuote"
"DoubleQuote"
"None"
{Parse}
Syntax
{Parse.Option}
PerfectScript Syntax
Parse_Create ()
Parse_EditLine ()
Parse_Go ()
Parse_Input (Block:String)
Parse_Output (Block:String)
Parse_Reset ()
Description
{Parse} breaks long text strings into data fields according to a format line. {Parse.Create} and {Parse.EditLine} act on the active cells.
Example
The macro in the next figure selects text cells, builds a format line in the first line of the selected cells, identifies the format line and text as the parse input cells, specifies output cells, and performs the parse:
11 1968 Davis, John Harrisburg, PA {Parse.Output A:A11}
12 1972 Lee, Elizabeth New York, NY {Parse.Go}
To use {Parse.EditLine}, follow the macro with a {CLEAR} macro command, then the string for the new format line, and a {CR} macro, as shown in the following example:
{Parse.EditLine} Lets you specify a new format line.
{Parse.Go} Use after setting up input and output cells and creating a format line.
{Parse.Input Block} Indicates the cells to parse.
{Parse.Output Block} Indicates the cells to hold parsed data.
{Parse.Reset} Clears previous settings.
{PasteFormat}
Syntax
{PasteFormat LinkType}
PerfectScript Syntax
PasteFormat (LinkType:String)
Description
{PasteFormat} lets you paste data in a specific format (for example, an OLE object) into a notebook. Use LinkType to specify the paste format.
Example
{PasteFormat Bitmap} pastes the data in the Clipboard as a bitmap into the active notebook.
You can use {PasteFormat?} or {PasteFormat!} to display the Paste Special dialog box. {PasteSpecial?} lets you manipulate the dialog box, whereas {PasteSpecial!} relies on the macro to manipulate it.
Parameters
LinkType Format to paste object as
{PasteLink}
Description
{PasteLink} sets up a DDE link to another application.
{PasteSpecial} pastes certain aspects of Quattro Pro data from the Clipboard.
You can use {PasteSpecial?} or {PasteSpecial!} to display the Paste Special dialog box. {PasteSpecial?} lets you manipulate the dialog box, whereas {PasteSpecial!} relies on the macro to manipulate it.
Example
The following macro pastes properties, formula cells, and numbers from the Clipboard, and skips any blank cells.
{PasteSpecial Properties, Formula Cells,"",Number cells,"","",NoBlanks,""}
Parameters
Properties Properties to paste from Clipboard; "" otherwise
Formula Cells Formula cells to paste from Clipboard, "" otherwise
Number Cells Number cells to paste from Clipboard, "" otherwise
Formula Values Pastes formula cells as values, "" otherwise
Transpose Switches the position of entries (data listed in columns is placed in rows and vice versa), "" otherwise
NoBlanks Avoids pasting blank cells from Clipboard; "" otherwise
Cell_Comments Pastes cell comments; "" otherwise
{PAUSEMACRO}
Description
{PAUSEMACRO} is used with {DODIALOG} or a command equivalent invoked with ! to pause the macro so that you can "finish up" whatever dialog box is displaying. Once you finish using the dialog box (by choosing OK, or canceling it), macro execution resumes with any macro commands following the {PAUSEMACRO}.
Use {PAUSEMACRO} only when a dialog box is displaying, Quattro Pro is in FIND mode, or Quattro Pro is in INPUT mode (using {RestrictInput.Option}). Otherwise, the macro pauses indefinitely.
Example
The following macro displays the Copy Cells dialog box, sets the From edit field to A1, activates the To edit field, and then waits for you to complete the copy operation. Once you finish the dialog box, the macro beeps and moves down a cell.
_copy_a1 {BlockCopy!}
{ALT+F}
A1
{ALT+T}
{PAUSEMACRO}
{BEEP}{DOWN}
{PGDN} and {PGUP}
Syntax
{PGDN <Number>},{PGUP <Number>}
Description
{PGDN} and {PGUP} are equivalent to PgDn and PgUp, respectively. Use Number to specify how many times the operation is repeated; for example, {PGUP 7} is equivalent to pressing PgUp seven times.
Parameters
Number Any positive integer or address of a cell containing a positive integer (optional)
{PlayPerfectScript}
Syntax
{PlayPerfectScript Filename}
Description
{PlayPerfectScript} plays a PerfectScript macro you specify.
Parameters
Filename Name of a PerfectScript macro file to run
{POKE} sends information to an application that supports Dynamic Data Exchange (DDE). This application is identified by DDEChannel. The type of application determines what Destination is; the destination could be cells in Excel or a bookmark in Word for Windows. DataToSend refers to cells containing the information to send. You must use the command {INITIATE} to open a channel of conversation before you can use {POKE} (this also determines the value of DDEChannel).
Example
This example starts a conversation with TASKLIST.OVD, which is a file open in ObjectVision. It sets the ObjectVision field Task to the label stored in new_task, and unchecks the Completed check box. Then the new task is inserted into the task list. The command block contains an ObjectVision command not available in Quattro Pro:
DDEChannel Channel ID number of the application to send information to
Destination Location in the application that receives the information being sent
DataToSend Cells containing the information to send to the application
{Preview}
Description
{Preview} lets you preview a printout on screen.
{Print}
Syntax
{Print.Option}
Description
{Print} is equivalent to the menu items in the following list. To display specific command equivalents, choose one of the following:
Command options for...
Page Setup
Named Settings
Print
Page Setup Options
The command equivalent {Print.PrintReset} resets print settings in all the dialog boxes displayed by these commands.
You can use {Print?} or {Print!} to display the Spreadsheet Print dialog box. {Print?} lets you manipulate the dialog box, whereas {Print!} relies on the macro to manipulate it.
Named Settings Command Options
PerfectScript Syntax
Print_Create (NamedSetting:String)
Print_Delete (NamedSetting:String)
Print_Use (NamedSetting:String)
Description
These command options affect named settings for printing. To update an existing named setting, use {Print.Create}. {Print.Delete} removes a named setting from the active notebook. {Print.Use} sets the current print settings to those stored under the name.
{Print.Create NamedSetting} Creates a named print setting using the name in the New Set text box
Replaces the settings stored under the selected name with the current print settings
{Print.Delete NamedSetting} Deletes the selected named setting
{Print.Use NamedSetting} Uses the selected named print setting
These command options affect the page setup. When specifying a margin, the default measurement system is used (set in the Windows Control Panel). To use a specific measurement system, place in (for inches) or cm (for centimeters) after the new margin setting (see the example). The new setting is converted into the default measurement system.
{Print.Options_Dialog} Displays the Page Setup dialog.
{Print.Bottom_Margin Value} Sets the amount of space between the edge of the page and the bottom of the document
{Print.CreateFooter Yes|No} Determines whether your print selection contains a footer.
{Print.CreateHeader Yes|No} Determines whether your print block contains a header.
{Print.Footer FooterString} Creates and specifies text for a footer
{Print.Footer_Margin Value} Sets the amount of space between the last row of data and the footer
{Print.Footers_Font "Typeface, PointSize, Bold(Yes|No), Italic(Yes|No), Underline(Yes|No), Strikeout(Yes|No)"} Specifies the typeface, point size, and type style for footer text
{Print.Header HeaderString} Creates and specifies text for a header
{Print.Header_Margin Value} Sets the amount of space between the header and the first row of data
{Print.Headers_Font "Typeface, PointSize, Bold (Yes|No), Italic (Yes|No), Underline (Yes|No), Strikeout (Yes|No)"} Specifies the typeface, point size, and type style for header text
{Print.Left_Margin Value} Specifies the amount of space between the edge of the page and the left of the document
{Print.PagesDown N} Determines how many pages long a print selection will occupy.
{Print.PagesAcross N} Determines how many pages wide a print selection will occupy.
{Print.Orientation Landscape|Portrait} Specifies portrait or landscape printing orientation
{Print.Page_Breaks Yes|No} Starts a new printed page at each soft page break
{Print.PageSetupReset} Resets the dialog box to its default settings, replacing all selections in the dialog box
{Print.Paper_Type PaperSize} Controls the paper type and printing orientation
{Print.Print_To_Fit Yes|No} Specifies the maximum width and height in pages to use when printing the print selection
{Print.Right_Margin Value} Specifies the amount of space between the edge of the page and the right of the document
{Print.Scaling 1-1000} Specifies the percentage to increase or decrease the size of notebook data on the printed page
{Print.Top_Margin Value} Specifies the amount of space between the edge of the page and the top of the document
Example
This macro sets the top and bottom margins to three centimeters, specifies landscape orientation, and sets the paper size to Legal.
These command options affect printing. {Print.DoPrint} prints the active notebook (or active chart) using current print settings. {Print.DoPrintGraph} provides a quick way to print a chart. If a floating chart is selected, {Print.DoPrintGraph} prints the chart being shown; if a chart icon is selected, {Print.DoPrintGraph} prints the chart represented by that icon; if a chart window is active, {Print.DoPrintGraph} prints the chart shown.
{Print.All_Pages Yes|No} Prints all notebook pages
{Print.Area Notebook | Selection | Current Sheet} Specifies how much of a notebook to print
{Print.Block Block} Prints the cells you specify
{Print.Copies Value} Specifies the number of copies to print
{Print.DoPrint} Sends the document to the printer
{Print.DoPrintGraph} Prints the selected chart
{Print.GroupCopies 0|1} Prints multiple copies sorted by sets of copies. Will "collate" copies when set to zero, and "group" copies when set to 1.
{Print.Start_Page_Number Value} Specifies the beginning and ending pages in the document to print
{Print.PrinterSetup Printer; Port; PrintToFile (0|1); Filename; CancelOverwrite (0) | Replace (1) | Backup (2) | Append (3)} Lets you specify details of the printing process
Example
This macro selects an icon on the Objects sheet named Report3 and prints the chart it represents.
{OBJECTSPAGEGOTO}
{SELECTOBJECT Report3}
{Print.DoPrintGraph}
This macro prints pages 7 through 12 of a document. The print selection is A3..C234.
These command options affect spreadsheet printing. {Print.Between_Page_Formatting} and {Print.Lines_Between_Pages} control the amount of space left between notebook sheets (if the print selection spans multiple sheets).
{Print.Between_Block_Formatting} and {Print.Lines_Between_Blocks} control space between the selections that make up a noncontiguous print selection.
{Print.Between_Block_Formatting "Lines"|"Page Advance"} Separates groups of cells with blank lines or page breaks
{Print.Between_Page_Formatting "Lines"|"Page Advance"} Separates sheets of 3-D cells with blank lines or page breaks
{Print.Cell_Formulas Yes|No} Prints each cell's address and contents instead of its calculated results
{Print.Center_Block Yes|No} Centers the cells of the print selection between the left and right margins of the printed page
{Print.Left_Heading Block} Adds the cell entries you specify as headings to print at the left of each printed page
{Print.Lines_Between_Blocks Value} Specifies how many blank lines to print between each group of cells
{Print.Lines_Between_Pages Value} Specifies how many blank lines to print between each sheet of 3-D pages
{Print.Print_Borders Yes|No} Includes row and column borders in the printed document
{Print.Print_Gridlines Yes|No} Includes the spreadsheet grid in the printed document
{Print.PrintOptionsReset} Resets the dialog box to its default settings, replacing all selections in the dialog box
{Print.Top_Heading Block} Adds the cell entries you specify as headings to print at the top of each printed page
{Print.PrintReset} Resets all print settings
Example
This macro specifies that three lines should be printed between each notebook sheet (if the print selection spans multiple sheets), and that row and column borders should print.
{PTTESTM} performs a paired two-sample Student's t-Test for means. Each value from InBlock1 is paired with a value from InBlock2. InBlock1 and InBlock2 must have the same number of values.
{PTTESTM} is equivalent to the t-Test analysis tool.
Parameters
InBlock1 The first input cells containing a column or row of numeric values
InBlock2 The second input cells containing a column or row of numeric values
OutBlock Upper-left cell of the output cells
Labels 1 if labels are located in the first column or row of the input cells; 0 if the input cells do not contain labels; the default is 0
Alpha Significance level of the test; the default is 0.05
Difference Hypothetical mean difference; the default is 0
{PTTESTV} performs a Student's t-Test using two indepependent (rather than paired) samples with unequal variances. {PTTESTV} is equivalent to the t-Test analysis tool.
Parameters
InBlock1 The first input cells containing a column or row of numeric values
InBlock2 The second input cells containing a column or row of numeric values
OutBlock Upper-left cell of the output cells
Labels 1 if labels are located in the first column or row of the input cells; 0 if the input cells do not contain labels; the default is 0
Alpha Significance level of the test; the default is 0.05
{PUT}
Syntax
{PUT Location,Column#,Row#,Value<:Type>}
PerfectScript Syntax
Put (Block:String; Column:Numeric; Row:Numeric; Value:Any)
Description
{PUT}, like {LET}, copies a value to a particular cell. However, instead of placing the value directly in the specified cell, {PUT} copies Value into the cell that is offset Column# columns and Row# rows into Location.
{PUT} processes Value the same way {LET} does, including the use of :string (or :s) and :value (or :v). If neither of these two optional arguments is supplied, {PUT} tries to store the value as a numeric value; if unsuccessful, it stores the value as a label.
The values for Column# and Row# can be any number between 0 and one less than the number of columns or rows within Location, respectively. A value of 0 implies the first column or row, 1 implies the second, and so on. If Column# or Row# exceeds the number of columns or rows in the cells, the macro stops. ({ONERROR} cannot trap this error.)
Example
Each of the following examples assumes cell A41 contains the value 25, the selection named numbers has been defined as A44..B50, and data is a cell containing the value 295.
{PUT numbers,1,4,A41:value} copies the value 25 into the cell at the intersection of the second column and the fifth row of the cell numbers (cell B48).
{PUT numbers,1,5,A41:s} copies the string "A41" into the cell at the 2nd column and the 6th row of the cell numbers (cell B49).
{PUT numbers,1,6,data} copies the contents of the cell data to the 2nd column and 7th row of numbers (cell B50). If there is no selection named data, this example instead places a label ("data") into cell B50.
Parameters
Location Cells within which Value will be stored, either as a value or label, as specified by Type
Column# Number of columns into the specified cells to store Value
Row# Number of rows into the specified cells to store Value
Value String or numeric value
Type String or value; string (or s) stores the value or formula as a label, and value (or v) stores the actual value or value resulting from a formula (optional)
{PUTBLOCK} lets you quickly enter the same value, label, or formula in multiple cells. Data is a string or value to place in Block. If Block is not specified, the currently selected cells are used. Block can be noncontiguous; if so, be sure to enclose it in parentheses. If Data is a formula containing relative addresses, those addresses are adjusted automatically.
Example
{PUTBLOCK "Quarter 1",A..D:A1} enters the label Quarter 1 in cells A:A1 through D:A1.
{PUTBLOCK 1990,A..D:B1} enters the value 1990 in cells A:B1 through D:B1.
{PUTBLOCK "+A1",C3..C12) enters the formula +A1 in C3, +A2 in C4, and so on.
{PUTBLOCK "11/01/94", (A:D3,B:D3,C:D3,D:D3),1} enters the date 11/01/94 in cell D3 of sheets A through D.
Parameters
Data Entry to type
Block Cells to type Data in (optional)
Date? Whether to enter Data as a date (1) or a label (0)
{PUTBLOCK2}
Syntax
{PUTBLOCK2 Data,<Block>}
PerfectScript Syntax
PutBlock2 (Data:Any; [Block:String])
Description
{PUTBLOCK2} enters the same value, label, or formula in multiple cells like {PUTBLOCK} but parses date formats automatically and requires a formula prefix before numeric values. Data is a string or value to place in Block. If Block is not specified, the currently selected cells are used. Block can be noncontiguous; if so, be sure to enclose it in parentheses. If Data is a formula containing relative addresses, those addresses are adjusted automatically.
Example
{PUTBLOCK2 "Quarter 1",A..D:A1} enters the label Quarter 1 in cells A:A1 through D:A1.
{PUTBLOCK2 +1990,A..D:B1} enters the value 1990 in cells A:B1 through D:B1.
{PUTBLOCK2 "+A1",C3..C12) enters the formula +A1 in C3, +A2 in C4, and so on.
{PUTBLOCK2 "11/01/94", (A:D3,B:D3,C:D3,D:D3)} enters the date 11/01/94 in cell D3 of sheets A through D.
{PUTCELL} is an easy way to store information in the active cell.
Example
{PUTCELL "Peggy Danderhoff"} stores Peggy Danderhoff as a label in the active cell.
{PUTCELL 45067} stores the number 45067 as a value in the active cell.
{PUTCELL "@SUM(A1..A27)"} stores the formula @SUM(A1..A27) in the active cell.
{PUTCELL "11/01/94",1} stores the date 11/01/94 in the active cell
Parameters
Data String to type into the active cell
Date? Whether to enter Data as a date (1) or a label (0)
{PUTCELL2}
Syntax
{PUTCELL2 Data}
PerfectScript Syntax
PutCell2 (Data:Any)
Description
{PUTCELL2} stores information in the active cell like {PUTCELL} but parses date formats automatically and requires a formula prefix before numeric values.
Example
{PUTCELL2 "Peggy Danderhoff"} stores Peggy Danderhoff as a label in the active cell.
{PUTCELL2 +45067} stores the number 45067 as a value in the active cell.
{PUTCELL2 "@SUM(A1..A27)"} stores the formula @SUM(A1..A27) in the active cell.
{PUTCELL2 "11/01/94"} stores the date 11/01/94 in the active cell