{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 As Integer)
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}.
{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_ As String)
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_ As String)
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"
{PasteFormat}
Syntax
PasteFormat(LinkType As String)
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}
Syntax
PasteLink()
Description
{PasteLink} sets up a DDE link to another application.
PasteSpecial
Syntax
PasteSpecial([Properties As String], [FormulaCells As String], [LabelCells As String], [NumberCells As String], [FormulaValues As String], [Transpose As String], [NoBlanks As String])
{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
{POKE}
Syntax
Poke(DDEChannel As Integer, Destination As String, DataToSend As String)
{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.
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:
dde_channel 10
command [@INSERT("tasks")]
exec_result 0
new_task Call Jim re: task priorities
task_status No
Parameters
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}
Syntax
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.
{Print.Between_Page_Formatting "Lines"}
{Print.Lines_Between_Pages 3}
{Print.Print_Borders Yes}
{PTTESTM}
Syntax
PTTESTM(InBlock1 As String, InBlock2 As String, OutBlock As String, [Labels_ As _PTTESTM_Labels__enum], [Alpha As Double], [Difference As Double])
{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}
Syntax
PTTESTV(InBlock1 As String, InBlock2 As String, OutBlock As String, [Labels_ As _PTTESTV_Labels__enum], [Alpha As Double])
{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(Block As String, Column As Integer, Row As Integer, Value)
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.
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}
Syntax
PutBlock(Data, [Block As String], [Date_ As _PutBlock_Date__enum])
{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 As String])
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