home *** CD-ROM | disk | FTP | other *** search
/ Best Objectech Shareware Selections / UNTITLED.iso / boss / spre / 006 / files.lzh / INSTA.DOC < prev    next >
Encoding:
Text File  |  1991-05-31  |  370.8 KB  |  9,241 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.                                     InstaCalc (tm)
  17.                                 Shareware User Manual
  18.                                       Version 3
  19.  
  20.  
  21.  
  22.                            (C) Copyright FormalSoft 1986-91
  23.                                  All Rights Reserved
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.         No part of  this documentation may be  reproduced in whole or  in part
  35.         without the prior written permission of FormalSoft.
  36.  
  37.  
  38.         Trademarks:    FormalSoft and InstaCalc are trademarks of FormalSoft.
  39.  
  40.                        All other  brand and  product names  are trademarks  or
  41.                        registered trademarks of their respective companies.
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.            FormalSoft  *  PO Box 1913  *  Sandy, UT 84091  *  801-565-0971
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.         WELCOME TO INSTACALC
  74.  
  75.         Thank you  for evaluating InstaCalc,  our PC Magazine  Editor's Choice
  76.         award  winning spreadsheet.  Although InstaCalc is extremely powerful,
  77.         we are certain you will find it to be the easiest spreadsheet you have
  78.         ever used.
  79.  
  80.         We encourage you to pass copies of this program on to your friends and
  81.         associates, so they too can see the power and ease of InstaCalc.
  82.  
  83.  
  84.  
  85.         LICENSE AGREEMENT
  86.  
  87.         InstaCalc is distributed as Shareware.   It is not free  software, nor
  88.         is it in the  public domain.  You are granted a limited license to use
  89.         InstaCalc on a trial basis.  If  you want to continue using InstaCalc,
  90.         you should  register with  FormalSoft using the  form provided  on the
  91.         next page. 
  92.  
  93.         A single  registered copy  of InstaCalc may  be used in  any situation
  94.         where only one copy of InstaCalc is running at a time, such as:
  95.  
  96.              - by  a  single user  on all  his/her machines,  such  as a  work
  97.              machine  and a  home machine  (where  the user  won't be  running
  98.              multiple copies at the same time).
  99.  
  100.              - or  on a single machine used by  multiple users (where only one
  101.              user can use InstaCalc at a time).
  102.  
  103.         If InstaCalc will be used by more than one user at a time, then a copy
  104.         must  be purchased  for each  machine.   We  offer  site licenses  and
  105.         quantity discounts.  Call us for details.
  106.  
  107.         You  are  also  granted  a  limited license  to  copy  and  distribute
  108.         InstaCalc for evaluation by others on the following conditions:
  109.  
  110.         - You may NOT charge  anything for InstaCalc itself.  You may charge a
  111.         copying fee (not to exceed $8) to cover disks and handling.  
  112.  
  113.         - You may NOT copy the printed documentation in any manner or form.  
  114.  
  115.         - You may  NOT bundle InstaCalc with  any other product  without prior
  116.         written permission from FormalSoft.
  117.  
  118.         -  You  may NOT  distribute  versions  of  InstaCalc which  have  been
  119.         modified in any way.
  120.  
  121.         -  You  must  include ALL  of  the  files which  are  distributed with
  122.         InstaCalc. These files must be ARCHIVED  together if you place them on
  123.         an electronic bulletin board.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.                                           1
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.                                   Registration Form
  142.                                   -----------------
  143.         TO ORDER:
  144.  
  145.         1. Send this form & payment to:    FormalSoft
  146.                                            InstaCalc Registration
  147.                                            P.O. Box 1913
  148.                                            Sandy, UT. 84091-1913
  149.  
  150.         2. Or give us a call at:           801-565-0971 (VISA/MC/AMEX)
  151.  
  152.  
  153.  
  154.         I want to receive  the most recent  version of InstaCalc, the  printed
  155.         manual, and to be eligible for technical support.  Please send me ____
  156.         copies of InstaCalc.  I have enclosed $49 for each copy  ordered, plus
  157.         $5 shipping and handling.
  158.  
  159.         * Utah residents please add 6.25% sales tax.
  160.         * Foreign orders add $10 for air mail.
  161.  
  162.         Amount enclosed:_____________
  163.  
  164.         * We  also offer quantity  discounts and site  licenses.  Call  us for
  165.         details.
  166.  
  167.         Disk size:    [ ] 5.25"       [ ] 3.5"
  168.  
  169.         Name:________________________________________________________________ 
  170.  
  171.         Company:_____________________________________________________________
  172.                     
  173.         Address:_____________________________________________________________
  174.                     
  175.         City, State, Zip:____________________________________________________
  176.  
  177.         Country:_____________________________________________________________
  178.                     
  179.         [ ] CHECK (US $ drawn on US bank only)   [ ] VISA/MC   [ ] AMEX
  180.  
  181.         Credit card #_______________________________   Exp date_______________
  182.  
  183.         Signature_____________________________________________________________
  184.  
  185.         Where did you get your copy from?____________________________________
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.                                           2
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.         INSTACALC FEATURES
  210.  
  211.         InstaCalc is  a state of  the art spreadsheet, extremely  powerful yet
  212.         easy to learn and use.
  213.  
  214.         ****************************************************************
  215.         * And InstaCalc is a PC Magazine Editor's Choice award winner! *
  216.         ****************************************************************
  217.  
  218.         InstaCalc can  be run either as a standalone  spreadsheet, or as a pop
  219.         up  spreadsheet which  can cut  and paste  your spreadsheet  data with
  220.         other programs.  Below are just a few of InstaCalc's capabilities.
  221.  
  222.         Pop up option uses less than 15K RAM
  223.         Cut and paste with other programs
  224.         Direct import and export of:
  225.              1-2-3 files
  226.              dBase files
  227.              DIF files
  228.              ASCII files
  229.         Powerful macro environment
  230.              Full application language
  231.                   for/next, repeat/until
  232.                   if/else/endif
  233.                   windowing commands
  234.                   moving bar menu systems
  235.                   access to DOS/printer
  236.              Macro editor
  237.              Debugging
  238.                   single stepping
  239.                   conditional breakpoints
  240.              Macro recorder
  241.         Business graphics
  242.         Expanded memory support
  243.         File encryption
  244.         File linking
  245.         100 built-in @functions
  246.         Goal seeking
  247.         Auditing
  248.         EGA 43 line support
  249.         Search and replace
  250.         Database entry forms
  251.         Sort on up to 9 keys
  252.         Query worksheet databases
  253.         Query dBase files
  254.         Mouse support
  255.         Visual point & shoot file manager
  256.         Context sensitive help
  257.         Menu system shows all levels of the menu on screen
  258.         Set and view options from full page menus
  259.         Index to function keys across bottom of screen
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                                           3
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.         CONTENTS
  278.  
  279.         GETTING STARTED . . . . . . . . . . . . . . . . . . . . . . . . .    2
  280.              INSTALLING INSTACALC . . . . . . . . . . . . . . . . . . . .    2
  281.              HOW TO RUN INSTACALC . . . . . . . . . . . . . . . . . . . .    2
  282.              STARTUP OPTIONS  . . . . . . . . . . . . . . . . . . . . . .    3
  283.              CUSTOMIZING INSTACALC  . . . . . . . . . . . . . . . . . . .    3
  284.              USING DATA FROM EARLIER VERSIONS OF INSTACALC  . . . . . . .    4
  285.  
  286.         INSTACALC BASICS  . . . . . . . . . . . . . . . . . . . . . . . .    5
  287.              THE WORKSHEET  . . . . . . . . . . . . . . . . . . . . . . .    5
  288.              HOW TO GET HELP  . . . . . . . . . . . . . . . . . . . . . .    6
  289.              MOVING AROUND THE WORKSHEET  . . . . . . . . . . . . . . . .    6
  290.              ENTERING AND EDITING DATA  . . . . . . . . . . . . . . . . .    8
  291.              HOW TO ENTER AND USE FORMULAS  . . . . . . . . . . . . . . .   10
  292.              RELATIVE AND ABSOLUTE CELL REFERENCES  . . . . . . . . . . .   12
  293.              DEFINING A RANGE OF CELLS  . . . . . . . . . . . . . . . . .   12
  294.              BUILT-IN @FUNCTIONS  . . . . . . . . . . . . . . . . . . . .   14
  295.              USING THE COMMAND MENUS  . . . . . . . . . . . . . . . . . .   14
  296.              USING THE FUNCTION KEYS  . . . . . . . . . . . . . . . . . .   15
  297.              SAVING AND RETRIEVING DATA . . . . . . . . . . . . . . . . .   15
  298.              USING THE FILE MANAGER . . . . . . . . . . . . . . . . . . .   15
  299.              CHANGING YOUR SPREADSHEET'S APPEARANCE . . . . . . . . . . .   16
  300.              PRINTING YOUR DATA . . . . . . . . . . . . . . . . . . . . .   17
  301.              GRAPHING YOUR DATA . . . . . . . . . . . . . . . . . . . . .   18
  302.              RECORDING A MACRO  . . . . . . . . . . . . . . . . . . . . .   18
  303.              THE INSTACALC TEXT EDITOR  . . . . . . . . . . . . . . . . .   19
  304.              THE INSTACALC MACRO LANGUAGE . . . . . . . . . . . . . . . .   19
  305.              CUTTING DATA FROM OTHER PROGRAMS . . . . . . . . . . . . . .   19
  306.              PASTING DATA TO OTHER PROGRAMS . . . . . . . . . . . . . . .   20
  307.  
  308.         REFERENCE . . . . . . . . . . . . . . . . . . . . . . . . . . . .   21
  309.              THE FUNCTION KEYS  . . . . . . . . . . . . . . . . . . . . .   21
  310.              INSTACALC COMMAND MENUS  . . . . . . . . . . . . . . . . . .   24
  311.              BUILT-IN FUNCTIONS . . . . . . . . . . . . . . . . . . . . .   63
  312.  
  313.         INSTACALC APPLICATIONS  . . . . . . . . . . . . . . . . . . . . .  112
  314.              CREATING AN APPLICATION  . . . . . . . . . . . . . . . . . .  112
  315.              RUNNING AN APPLICATION . . . . . . . . . . . . . . . . . . .  113
  316.              LANGUAGE DESCRIPTION . . . . . . . . . . . . . . . . . . . .  114
  317.              SPECIAL KEY NAMES  . . . . . . . . . . . . . . . . . . . . .  116
  318.              THE INSTACALC COMMAND ENVIRONMENT  . . . . . . . . . . . . .  117
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.                                           1
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.         GETTING STARTED
  346.  
  347.  
  348.         INSTALLING INSTACALC
  349.         The InstaCalc disk is in  a compressed form to  fit on a single  disk.
  350.         An installation program  is included which will  automatically install
  351.         InstaCalc on your hard disk or another floppy.  To run this program:
  352.  
  353.         1. Turn on your computer.
  354.         2. Insert the InstaCalc disk into drive A.
  355.         3. Type A: at the DOS prompt and press <Enter>.
  356.         4. Type INSTALL and press <Enter>.
  357.         5. Respond to the prompts as directed.
  358.  
  359.  
  360.         HOW TO RUN INSTACALC
  361.         InstaCalc  may  be  run  in  two  different  modes;  as  a  standalone
  362.         spreadsheet, or as a pop up spreadsheet.
  363.  
  364.         Standalone     To run InstaCalc as a standalone spreadsheet:
  365.  
  366.                        - Turn on your computer
  367.                        - Change to the directory where the InstaCalc files are
  368.                        - Type INSTA
  369.  
  370.         Pop up         To run InstaCalc as a pop up spreadsheet:
  371.  
  372.                        - Turn on your computer
  373.                        - Change to the directory where the InstaCalc files are
  374.                        - Type INSTA /p
  375.  
  376.                        This  will install InstaCalc into memory and return you
  377.                        to the DOS  prompt.  InstaCalc will then  look at every
  378.                        keystroke  you  type  (don't   worry,  it  isn't  doing
  379.                        anything  to hurt them).   InstaCalc is  simply looking
  380.                        for a  particular key  sequence known  as the  Hot Key.
  381.                        The Hot Key is initially  defined to be <Alt>I, but you
  382.                        can change this with the setup program described later.
  383.  
  384.                        Once you have loaded InstaCalc  into memory, you may go
  385.                        about  doing  whatever you  need to  do, whether  it is
  386.                        running DOS commands or other programs.  Then, whenever
  387.                        you need the power of InstaCalc, simply type <Alt>I (or
  388.                        whatever you  have  defined  the Hot  Key  to  be)  and
  389.                        InstaCalc will pop into action.
  390.  
  391.                        InstaCalc  should  be  loaded   after  memory  resident
  392.                        programs which  are not called up by a hot key (such as
  393.                        RAM disks, print spoolers, etc).
  394.  
  395.                        When InstaCalc is run in pop up mode,  it will only use
  396.                        15K of memory, swapping the  rest of the program in and
  397.                        out  from your hard disk, extended, or expanded memory.
  398.                        When swapping from disk, there will be a delay from the
  399.                        time you press the Hot Key and when the program pops up
  400.                        (and  pops  down  when  you  are  done).    The message
  401.                        Swapping in and Swapping out will be displayed at these
  402.  
  403.  
  404.                                           2
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.                        times.
  414.  
  415.                        If you  want to  unload InstaCalc  from memory,  simply
  416.                        type
  417.  
  418.                        INSTA /u
  419.  
  420.  
  421.                        NOTE FOR  WORDPERFECT  USERS:  Sometimes  when  popping
  422.                        InstaCalc  up  through  WordPerfect on  an  EGA  or VGA
  423.                        system,  the  InstaCalc  screen  will  have  a  strange
  424.                        appearance  (such as text in italics, odd colors, etc).
  425.                        This  is  because  WordPerfect sometimes  uses  special
  426.                        "fonts" on screen,  and InstaCalc must use  the current
  427.                        "font" when it pops up through WordPerfect.   There are
  428.                        two ways around this:
  429.  
  430.                        (1) In WordPerfect,  go into the setup  screen, and set
  431.                        the Colors/Fonts/Attributes to "Normal Font Only".
  432.  
  433.                        or
  434.  
  435.                        (2)  Run the InstaCalc SETUP.EXE program, and make sure
  436.                        the  colors you  select  for the  various parts  of the
  437.                        screen  come  from the  left  8  columns  of the  color
  438.                        selection box (the  right 8 columns  of colors are  the
  439.                        ones that cause the problems).
  440.  
  441.  
  442.  
  443.         STARTUP OPTIONS
  444.         InstaCalc provides  a variety  of options you  can use when  you first
  445.         start up the program.
  446.  
  447.         Switches  InstaCalc provides the following command line switches:
  448.  
  449.                   /Pmemory  Install  InstaCalc as a popup spreadsheet.  If you
  450.                             use the /P  alone, InstaCalc will allocate  40K of
  451.                             memory for your data.   If you want more (or less)
  452.                             memory to store your data  in, then add the number
  453.                             of bytes desired immediately after the /P.
  454.  
  455.                   /U        Unload InstaCalc from memory.
  456.  
  457.  
  458.  
  459.  
  460.         CUSTOMIZING INSTACALC
  461.         InstaCalc includes a  setup program which allows you  to customize the
  462.         functionality and appearance of InstaCalc on  your system.  To run the
  463.         setup program, simply type:
  464.  
  465.         SETUP  at the DOS prompt.
  466.  
  467.         The setup program allows you to change the following settings:
  468.  
  469.         Display in B&W      Setting this option to YES causes InstaCalc to use
  470.  
  471.  
  472.                                           3
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.                             black and white  whether a color card  is detected
  482.                             or not.   This  is useful when  your system  has a
  483.                             color card but a monochrome monitor.
  484.  
  485.         Currency format     This option allows you to select the format to use
  486.                             for numbers and currency.  Normally InstaCalc uses
  487.                             a period for the decimal point, and a comma as the
  488.                             separator between thousands, millions,  etc.  Many
  489.                             countries  use these  characters  in the  opposite
  490.                             manner.   If you choose  to use the comma  for the
  491.                             decimal  point, then  you must  use  the colon  to
  492.                             separate  arguments in @functions.   You  may also
  493.                             select which character (or  characters) to use for
  494.                             your  currency  symbol.   You  may  replace  the $
  495.                             symbol with any  other available symbol.   You may
  496.                             also set the currency symbol to be after the value
  497.                             rather than before the value.
  498.  
  499.         Hot Key             This option allows you to select the  Hot Key that
  500.                             will be used to pop up InstaCalc in TSR mode.  The
  501.                             Hot   key  may  be   any  of  the   following  key
  502.                             combinations: <Ctrl>  with any letter,  <Alt> with
  503.                             any letter,  <Alt> with  a function  key (<F1>  to
  504.                             <F10>),  <Alt> with one  of the number  keys along
  505.                             the top row, <Alt> with the - or = key.
  506.  
  507.         Colors              This  option allows  you  to  select which  colors
  508.                             InstaCalc should  use for the  different parts  of
  509.                             the display.   Select the part  of the screen  you
  510.                             want to change the color of (for example, the axes
  511.                             and cell  pointer).   A window  will pop  up which
  512.                             displays  all of the colors available.  You select
  513.                             the color  you want by  moving the cursor  to that
  514.                             color with  the arrow  keys and  pressing <Enter>.
  515.                             The sample display will be updated to show the new
  516.                             color you just selected.
  517.  
  518.         Exit                Pressing X  will exit  from SETUP,  and will  save
  519.                             your changes to the INSTA.CFG file.
  520.  
  521.  
  522.  
  523.         USING DATA FROM EARLIER VERSIONS OF INSTACALC
  524.         If you have data from earlier versions  of InstaCalc, you will need to
  525.         convert them before  using them with InstaCalc  3.0.  To perform  this
  526.         conversion,  use the EXPORT.COM  program which comes  with the earlier
  527.         versions to  convert your data to a  1-2-3 WK1 file.   For example, if
  528.         you have an InstaCalc file named MYFILE.INS, you would type:
  529.  
  530.         EXPORT WK1 MYFILE
  531.  
  532.         at the  DOS prompt.   This will read  the InstaCalc file and  create a
  533.         file named MYFILE.WK1.
  534.  
  535.         You can then read the newly created MYFILE.WK1 file into InstaCalc 3.0
  536.         using the /File Import 1-2-3 command.
  537.  
  538.  
  539.  
  540.                                           4
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.         INSTACALC BASICS
  550.  
  551.         THE WORKSHEET
  552.         A spreadsheet  may be thought of as a large electronic worksheet, much
  553.         like a piece of paper divided into rows and columns, like this:
  554.  
  555.                      A   B   C   D   E   F   G   H
  556.                    ---------------------------------
  557.                   1|   |   |   |   |   |   |   |   |
  558.                    |---|---|---|---|---|---|---|---|
  559.                   2|   |   |   |   |   |   |   |   |
  560.                    |---|---|---|---|---|---|---|---|
  561.                   3|   |   |   |   |   |   |   |   |
  562.                    |---|---|---|---|---|---|---|---|
  563.                   4|   |   |   |   |   |   |   |   |
  564.                    |---|---|---|---|---|---|---|---|
  565.                   5|   |   |   |   |   |   |   |   |
  566.                    |---|---|---|---|---|---|---|---|
  567.                   6|   |   |   |   |   |   |   |   |
  568.                    |---|---|---|---|---|---|---|---|
  569.                   7|   |   |   |   |   |   |   |   |
  570.                    ---------------------------------
  571.  
  572.         An InstaCalc  worksheet has 256  columns and 4096  rows.  In  order to
  573.         distinguish columns from each other, InstaCalc assigns a letter of the
  574.         alphabet to each  column.  The first  26 columns are labeled  with the
  575.         letters A through Z.  Since there are 256 columns but only 26 letters,
  576.         the remaining columns must use 2  letters to identify them.  InstaCalc
  577.         assigns each of the rows in a worksheet a number from 1  to 4096.  The
  578.         top row in a worksheet is row 1 and the bottom row is row 4096.
  579.  
  580.         The area where a row and a column cross is known as  a cell. Each cell
  581.         in  the Worksheet  is identified  by the  letter (or  letters) of  the
  582.         column it is in, and the number of  the row it is in. For example, the
  583.         cell that is in column R and  row 29 is named R29 (the column  letters
  584.         always come before  the row number). Each one of the cells may contain
  585.         some text, a number, or a formula.
  586.  
  587.         Since it is impossible to view all 4096 rows and  256 columns at once,
  588.         the screen display provides a window looking into  the Worksheet.  The
  589.         letters of the  columns which  are on  the screen are  displayed in  a
  590.         horizontal  bar above the columns, while the numbers of the rows which
  591.         are on the screen  are displayed in a vertical bar to  the left of the
  592.         rows.
  593.  
  594.         A status line  is located in the  upper left corner of  the screen and
  595.         looks something like this:
  596.  
  597.         A1: (W9) BLANK <Default>
  598.  
  599.         Each component of the status  line tells you certain information about
  600.         the current cell.  A1 tells you that  the cell you are currently at is
  601.         in column A and row 1.  (W9) tells you that the column you are in is 9
  602.         characters wide.
  603.  
  604.  
  605.  
  606.  
  607.  
  608.                                           5
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.         BLANK tells you that  the cell you  are at is  currently blank.   This
  618.         item tells you what is currently in the cell:
  619.  
  620.              BLANK     - a blank cell
  621.              TEXT      - a line of text
  622.              NUMBER    - a number
  623.              FORMULA   - a formula with a numeric result
  624.              TXTFORM   - a formula with a text result
  625.              FORMAT    - a blank cell which contains formatting information
  626.              ERROR     - a formula which has an error value
  627.  
  628.         The bottom  line of the display is an  index to the function keys <F1>
  629.         through <F10> so you don't have to memorize or look them up.  Pressing
  630.         <Ctrl> changes  this index  to reflect the  operation of  the function
  631.         keys when used in combination with the <Ctrl> key.
  632.  
  633.  
  634.  
  635.         HOW TO GET HELP
  636.         InstaCalc provides extensive online help for its features.  To call up
  637.         this help, simply press the <F1> Help key at any point in the program.
  638.         A  help  screen will  pop  up  which  provides information  about  the
  639.         operation you are attempting.
  640.  
  641.         InstaCalc's help is  context-sensitive.  This means that  InstaCalc is
  642.         always keeping track of what you are doing so that  it can provide the
  643.         proper help screen when  you ask for  it.  For  example, if you  press
  644.         <F1> when  you are  trying to copy  a cell, then  a help  screen which
  645.         explains that feature will pop up.
  646.  
  647.         InstaCalc's help is also interactive.  This means that the help screen
  648.         which  pops up  will also  list several  other help screens  which are
  649.         related to what you are doing.  You may view one of these related help
  650.         screens by simply  using the <Left>  and <Right>  keys (or moving  the
  651.         mouse)  to  move the  highlight bar  to  the name  of the  help screen
  652.         desired, and then pressing the <Enter> key or left mouse button, or by
  653.         simply pressing the first letter of the desired help screen's name.
  654.  
  655.         You may also call up a list of help screens called the <HELP INDEX> by
  656.         pressing the  <F1> key a second time, or  by pressing the right button
  657.         on your mouse.
  658.  
  659.         After you have read the help  screens that interest you, simply  press
  660.         the <Esc>  key (or both mouse  keys simultaneously) to return  to what
  661.         you were doing.
  662.  
  663.  
  664.  
  665.         MOVING AROUND THE WORKSHEET
  666.         You move  from cell to  cell by moving  the "cell pointer".   The cell
  667.         pointer is a  highlighted bar on the screen which "points to" the cell
  668.         in  the Worksheet  which is  the  current cell.   The  address  of the
  669.         current cell is displayed on the top line of the InstaCalc screen.
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.                                           6
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.         InstaCalc provides many ways to move the cell pointer.
  686.  
  687.         <Up> <Down>
  688.         <Left> <Right>
  689.                        These keys move  the cell  pointer up,  down, left,  or
  690.                        right one cell position.
  691.  
  692.         <Home>         This key moves the cell pointer to cell A1.
  693.  
  694.         <End>          This key operates in a different manner  than the other
  695.                        movement keys.   Pressing <End> does not  move the cell
  696.                        pointer  itself,  but  changes  the  way   the  <Left>,
  697.                        <Right>, <Up>,  <Down>, <PgUp>, <PgDn> and  <Home> keys
  698.                        work.  If you  press the <End> key and then  one of the
  699.                        arrow  keys or <PgUp> or <PgDn>,  then the cell pointer
  700.                        will move in one of the following ways:
  701.  
  702.                        - If the  cell pointer is in a blank cell, it will move
  703.                        in the direction selected to the first non blank cell.
  704.  
  705.                        - If the cell pointer is  in a non blank cell, it  will
  706.                        move in  the direction selected  to the last  non blank
  707.                        cell before a blank cell.
  708.  
  709.                        If  you press the <End> key followed immediately by the
  710.                        <Home> key, the  cell pointer will move to  the cell in
  711.                        the lower right corner of the sheet.
  712.  
  713.                        If you want to cancel  out the effect of the <End>  key
  714.                        after you  have pressed it, simply press <End> a second
  715.                        time.
  716.  
  717.         <Ctrl><Right>  This key sequence  moves the cell pointer  one screen's
  718.                        worth of  columns to the  right.  This key  sequence is
  719.                        generated by holding  down the <Ctrl> key  and pressing
  720.                        <Right>.
  721.  
  722.         <Ctrl><Left>   This key sequence  moves the cell pointer  one screen's
  723.                        worth of  columns to  the left.   This key  sequence is
  724.                        generated by holding  down the <Ctrl> key  and pressing
  725.                        <Left>.
  726.  
  727.         <PgUp>         This  key  sequence  moves  the  cell  pointer  up  one
  728.                        screen's worth of rows.  This key sequence is generated
  729.                        by holding down <Ctrl> and pressing <PgUp>.
  730.  
  731.         <PgDn>         This  key  sequence  moves the  cell  pointer  down one
  732.                        screen's worth of rows.  This key sequence is generated
  733.                        by holding down <Ctrl> and pressing <PgDn>.
  734.  
  735.         <F5>           This key  moves the cell  pointer anywhere you  tell it
  736.                        to.   InstaCalc will ask you which  cell you want to go
  737.                        to, and you just type in the cell name and hit <Enter>.
  738.  
  739.         In addition to the various movement keys,  InstaCalc provides built-in
  740.         mouse support.   If you  have a  mouse and have  installed your  mouse
  741.         driver before running InstaCalc, then you can move the cell pointer by
  742.  
  743.  
  744.                                           7
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.         simply moving the mouse in the direction you want to go.
  754.  
  755.  
  756.  
  757.         ENTERING AND EDITING DATA
  758.         You  can enter numbers or text into any of the cells in the Worksheet.
  759.         Just move the cell pointer to the  cell you want to enter a number  or
  760.         text  in, and  type the  number or  text.   You  may enter  up to  240
  761.         characters into each  cell.  The number  or text will be  entered into
  762.         the cell as  soon as  you press <Enter>  or one of  the movement  keys
  763.         (<Up>, <Down>,  <Left>, <Right>,  <PgUp>, or <PgDn>).   If  you finish
  764.         entering the data using the <Enter> key,  the cell pointer will remain
  765.         positioned at the  same cell.  If  you finish entering the  data using
  766.         one of the  movement keys, the data  will be entered into  the current
  767.         cell, and  then the  cell pointer  will move  to another  cell in  the
  768.         direction you specified.
  769.  
  770.         Numbers   A  number can range  in value from -10^37  to 10^37, and can
  771.                   have up to  11 significant places.   You can enter  a number
  772.                   into a cell using either standard notation (like 12.345)  or
  773.                   scientific notation (like 1234.5e-2).
  774.  
  775.         Text      If you enter  a line of text which  contains more characters
  776.                   than the  column is wide,  it will spill over  into adjacent
  777.                   cells (if  the adjacent cells  are blank).  If  the adjacent
  778.                   cells contain data,  then the extra  characters in the  text
  779.                   string  will be hidden from view (but  they will still be in
  780.                   the cell).   If you want to see  the entire string, you must
  781.                   widen the column containing the text.
  782.  
  783.                   The  way your  text is  displayed in a  cell depends  on the
  784.                   first character  of the text.   There are four  (4) possible
  785.                   characters which can precede your text and which  affect the
  786.                   way the text is displayed.  These characters are:
  787.  
  788.                   ' causes the text to be left justified in the cell
  789.                   " causes the text to be right justified in the cell
  790.                   ^ causes the text to be centered in the cell
  791.                   \ causes the next character to be repeated
  792.  
  793.                   If  you enter  some text  without one  of the  above special
  794.                   characters  as   the   first   character,   InstaCalc   will
  795.                   automatically place the global justify character on the text
  796.                   for  you.   You can  select  or change  this global  justify
  797.                   character  with the /Worksheet  Justify command on  the main
  798.                   menu.   Once the text has been entered  into a cell, you may
  799.                   change the justification  using either the /Cell  Justify or
  800.                   the  /Range Justify commands  (or use the  <F2>Edit function
  801.                   key to  enter edit  mode and  just change  the justification
  802.                   character to the one you want).
  803.  
  804.         Editing   If you need to change an entry in a cell,  but don't want to
  805.                   retype the entire  thing, InstaCalc provides the  ability to
  806.                   edit your  entry. Simply move  the cell pointer to  the cell
  807.                   you want to edit, and press the <F2> Edit key.  If  there is
  808.                   anything  in  the cell  to  edit, InstaCalc  will  enter its
  809.                   editing mode.   Also, if  you make an error  when entering a
  810.  
  811.  
  812.                                           8
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.                   formula   this    editing   capability   will    be   called
  822.                   automatically.
  823.  
  824.                   When you  are in edit  mode, the following editing  keys are
  825.                   available:
  826.  
  827.                   <Left>         moves the cursor one character to the left.
  828.                   <Right>        moves the cursor one character to the right.
  829.                   <Home>         moves the cursor to the first character.
  830.                   <End>          moves the cursor to the last character.
  831.                   <Ctrl><Right>  moves the cursor one word to the right.
  832.                   <Ctrl><Left>   moves the cursor one word to the left.
  833.  
  834.                   <BkSp>         deletes  the character  to  the left  of  the
  835.                                  cursor and shifts the following characters in
  836.                                  the line  to the  left to fill  in the  empty
  837.                                  space.
  838.  
  839.                   <Ctrl><BkSp>   deletes the  entire line.   This  is not  the
  840.                                  same  as erasing  the cell.    The cell  will
  841.                                  still take up  memory, but it will  contain a
  842.                                  blank string.  To  erase the cell completely,
  843.                                  use the /Cell Erase command.
  844.  
  845.                   <Del>          deletes the  character underneath  the cursor
  846.                                  and shifts  the following  characters in  the
  847.                                  line to the left to fill in the empty space.
  848.  
  849.                   <Ins>          toggles between  insert and  overwrite modes.
  850.                                  When   you  are  in  insert  mode,  typing  a
  851.                                  character will insert  the new character into
  852.                                  the  line at the  point where the  cursor is.
  853.                                  The  character under the  cursor and those to
  854.                                  the  right of the  cursor are shifted  to the
  855.                                  right  to make  room  for the  new character.
  856.                                  When  you are  in  overwrite  mode, typing  a
  857.                                  character  will replace  the character  under
  858.                                  the cursor with the new character.
  859.  
  860.                                  When  you are in insert mode, the cursor will
  861.                                  be  an  underline.   In  overwrite  mode  the
  862.                                  cursor will be a solid block.
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.                                           9
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.         HOW TO ENTER AND USE FORMULAS
  890.         One of the most  useful features of any spreadsheet is  the ability to
  891.         perform  calculations using  the  numbers and  text  entered in  other
  892.         cells.  This  is done by entering a  formula into a cell.   To enter a
  893.         formula, you simply  move the cell  pointer to the  cell you want  the
  894.         formula to be in,  type the formula, then press <Enter>.   When a cell
  895.         contains  a  formula, it  will  display  the  value that  the  formula
  896.         evaluates to, rather than the formula itself.
  897.  
  898.         An InstaCalc formula must begin with an equal sign '=' and may be made
  899.         up of numbers (or  text in some cases), references to  values in other
  900.         cells,  built-in functions, and  mathematical, logical, and comparison
  901.         operators.
  902.  
  903.         Example   Let's say you have a number  in cell B5 and another in  cell
  904.                   C6, and you would  like to add these  two numbers and  place
  905.                   the result in cell A4.  Simply  move the cell pointer to A4,
  906.                   and  type  in  the following  formula:  =B5+C6  (followed by
  907.                   <Enter>).  Cell A4 now contains the formula you entered, but
  908.                   it will  display the result  of the formula.   If you  later
  909.                   change the number in either B5 or C6, the formula in A4 will
  910.                   be recalculated and the new value will be displayed.
  911.  
  912.         You can use the following  operators in a formula (a and b  can be any
  913.         number, cell reference, function, or formula):
  914.  
  915.         Mathematical   a+b  Addition
  916.                        a-b  Subtraction
  917.                        a*b  Multiplication
  918.                        a/b  Division
  919.                        a^b  Exponentiation
  920.  
  921.         Logical        a&b  And (is true only if a is true AND b is true)
  922.                        a|b  Or (is true is a is true OR b is true)
  923.                        ~b   Not (false if b is true, and true if b is false)
  924.  
  925.         Comparison     a=b  is true if a is equal to b
  926.                        a<>b is true if a is NOT equal to b
  927.                        a<b  is true if a is less than b
  928.                        a>b  is true if a is greater than b
  929.                        a<=b is true if a is less than or equal to b
  930.                        a>=b is true is a is greater than or equal to b
  931.  
  932.         You can also use the comparison operators to compare text strings with
  933.         each other.   Two strings  are considered equal  if they are  the same
  934.         length, and  contain the same  characters in the  same order.   String
  935.         comparisons  are case  insensitive, which means  that two  letters are
  936.         considered the  same regardless of whether one is uppercase and one is
  937.         lowercase.  For example,  the string Test is  considered equal to  the
  938.         string test.
  939.  
  940.         In addition, the + operator can also be used to concatenate 2 strings.
  941.         For example, the formula:
  942.  
  943.         ="This is"+" a test"
  944.  
  945.         returns the string This is a test.
  946.  
  947.  
  948.                                           10
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.         If  you  enter  a formula  which  uses  more  than  one operator,  the
  958.         operations   are  always  performed   in  a  specific   order  (called
  959.         precedence).  The order of precedence is:
  960.  
  961.         1. Exponentiation             ^ 
  962.         2. Negation                   -
  963.         3. Multiplication and Division          *   /
  964.         4. Addition and Subtraction        +   -
  965.         5. Comparison                 =   <   >   <=   >=   <>
  966.         6. Not                        ~
  967.         7. And/Or                &   |
  968.  
  969.         where exponentiation is performed before negation and so on.
  970.  
  971.         If  you want  to change the  order in which  operations are performed,
  972.         then you must use  parentheses in your formulas.  Operations which you
  973.         place in  parentheses  will  be performed  before  those  outside  the
  974.         parentheses.  For example, the formula
  975.  
  976.         =2+3*4
  977.  
  978.         evaluates as 14 (not 20) because  the multiply has a higher precedence
  979.         than the addition.   If you want  the addition to be  performed first,
  980.         then use parentheses to make the equation look like
  981.  
  982.         =(2+3)*4
  983.  
  984.         In addition to typing cell references  in formulas, you can also enter
  985.         cell references by  pointing to them  with the cell  pointer.  At  any
  986.         point in entering a formula where a cell reference is allowed, you can
  987.         simply press any of  the cell pointer movement keys  to begin pointing
  988.         to  a cell or range of cells.   The address of the cell which the cell
  989.         pointer  is on  will appear  in the  formula.   As you  move the  cell
  990.         pointer  around, the  reference in  the  formula will  be adjusted  to
  991.         reflect the new position of the cell pointer.
  992.  
  993.         When the  cell pointer  is highlighting the  cell reference  you want,
  994.         either press the <Enter>  key or the character you want to immediately
  995.         follow  the  cell reference.    If  you  press  the <Enter>  key,  the
  996.         reference will be entered and  you may continue to enter the  formula.
  997.         If you press another  key, the reference and the key  you pressed will
  998.         be  entered on  the formula  line, and you  may continue  entering the
  999.         formula. 
  1000.  
  1001.         If you change  your mind about  pointing to  a cell reference,  simply
  1002.         press the <Esc> key and you will be returned to formula  entry without
  1003.         any cell reference being entered.
  1004.  
  1005.         If you have named any cells with the /Range Name command, you may also
  1006.         select a  cell or  range reference  from a  list of  these references.
  1007.         Simply press the <F3> key when you want to select a named range, and a
  1008.         menu will pop  up which lists  all the currently defined  range names.
  1009.         You can then select  the range name  you want, and  it will be  placed
  1010.         into your  formula for you.  The  <F3> key will only pop  up the range
  1011.         name list when it is legal to enter a cell or range reference.
  1012.  
  1013.         If you enter a formula which InstaCalc can't evaluate, the formula you
  1014.  
  1015.  
  1016.                                           11
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.         entered will be displayed on the command line and the editing facility
  1026.         will be  invoked.   The cursor  will be  placed near  the part  of the
  1027.         formula which InstaCalc didn't like, and you may fix the formula using
  1028.         the editing commands.
  1029.  
  1030.         If  you enter (or  edit) a  formula and the  word CIRC  appears in the
  1031.         upper  right corner  of the  screen, this  means a  circular reference
  1032.         exists in  your worksheet.  A circular  reference means that a formula
  1033.         in your  worksheet depends  on the value  of the cell  it is in.   For
  1034.         example, if cell  A1 contains the formula =2*A1, then the formula must
  1035.         use the current  value of cell A1 to calculate the  next value of cell
  1036.         A1.  If you have a circular  reference, the status window (<Ctrl><F8>)
  1037.         will tell you which cell it is.
  1038.  
  1039.  
  1040.  
  1041.         RELATIVE AND ABSOLUTE CELL REFERENCES
  1042.         When a formula  references another cell, there are  two different ways
  1043.         that the  cell can be referenced; absolute  and relative.  The purpose
  1044.         of relative and absolute  references is to let InstaCalc  know what to
  1045.         do when moving formulas from cell to cell.
  1046.  
  1047.         It is easy  to distinguish  between an  absolute and  a relative  cell
  1048.         reference.   An absolute cell reference  uses the $ character in front
  1049.         of each of its coordinates, like $A$1, while a relative reference uses
  1050.         no special characters, like A1.
  1051.  
  1052.         Absolute  An absolute cell reference in  a formula points to the exact
  1053.                   same  cell,  regardless of  where  the formula  is  moved or
  1054.                   copied to.
  1055.  
  1056.         Relative  A relative  cell reference in  a formula points to  the cell
  1057.                   which is a  certain number of rows and columns away.  If the
  1058.                   formula  is moved, the  new relative cell  reference will be
  1059.                   adjusted to  point to the  cell the same number  of rows and
  1060.                   columns away from the new formula location.
  1061.  
  1062.         It doesn't  matter whether  a cell reference  is absolute  or relative
  1063.         when a  formula is evaluated;  the result will  be the same  in either
  1064.         case.   For example,  the formula =2*A1  will have  the same  value as
  1065.         =2*$A$1.    You can have  both absolute and relative references in the
  1066.         same equation if you want.
  1067.  
  1068.  
  1069.  
  1070.  
  1071.         DEFINING A RANGE OF CELLS
  1072.         Many of InstaCalc's  commands can operate on  more than one cell  at a
  1073.         time.  These commands will usually ask you  to define a range of cells
  1074.         to  perform the command on.  A reference  to a range is made up of the
  1075.         cells at opposite  corners of the range separated by two periods.  For
  1076.         example, the  range reference  A1..Z20 contains all  the cells  in the
  1077.         range bordered by columns A through Z and rows 1 through 20.
  1078.  
  1079.         When  a command  asks you  to  define a  range of  cells, there  are 5
  1080.         different options.
  1081.  
  1082.  
  1083.  
  1084.                                           12
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.              - You can simply type in the range reference.
  1094.  
  1095.              -  You can  type  in the  name  of a  cell  surrounded by  square
  1096.              brackets.  InstaCalc will read the name of the range out  of that
  1097.              cell.  This option allows your application programs to indirectly
  1098.              supply a range reference to a command.
  1099.  
  1100.              Example   If  cell B5 contains  the string 'G1..J10,  then typing
  1101.                        [B5] when  you are asked  to define a range  will cause
  1102.                        InstaCalc to use the range G1..J10 for the command.
  1103.  
  1104.              - If you  have named a range  using the /Range Name  command, you
  1105.              may simply type in the name.
  1106.  
  1107.              Example   If you  assigned the name  COSTS to the  range G1..J10,
  1108.                        then typing COSTS when you  are asked to define a range
  1109.                        will  cause InstaCalc to use  the range G1..J10 for the
  1110.                        command.
  1111.  
  1112.              - Pressing  the <F3> Range  key will bring up  a menu of  all the
  1113.              currently defined range  names.  You may  pick a range  from this
  1114.              list by highlighting  the name and pressing the <Enter>  key.  If
  1115.              there are more  than 16 range  names defined,  you may press  the
  1116.              <PgUp> and <PgDn> keys to view more range names.
  1117.  
  1118.              - You  can highlight the range  on screen using  the cursor keys.
  1119.              When you are defining a range, all the visible cells in the range
  1120.              will be highlighted on the screen.  On the command line  you will
  1121.              see either  a  single cell  reference or  a range  reference.   A
  1122.              single  cell reference  means that  an anchor  cell has  not been
  1123.              selected.  In this case, pressing a movement key simply moves the
  1124.              cell pointer to  a new cell, but  does not highlight  (or define)
  1125.              any other cells.   If an anchor  cell has been selected  then all
  1126.              cells between  the anchor cell  and the current cell  are defined
  1127.              (and highlighted if visible).
  1128.  
  1129.              You  can use  any of the  movement keys (including  <F5> GoTo) to
  1130.              move the cell  pointer when  highlighting a range  of cells.   In
  1131.              addition, the following keys are active when defining a range:
  1132.  
  1133.              <Enter>   This  key causes  all the  cells  in the  range on  the
  1134.                        command  line to  be  defined. If  only  a single  cell
  1135.                        reference  is displayed  when you  press <Enter>,  then
  1136.                        only that cell will be defined.
  1137.  
  1138.              .         The period key sets the  anchor to the current cell. If
  1139.                        an  anchor was  already  set  before  you  pressed  the
  1140.                        period, then it is released before the new one is set.
  1141.  
  1142.              <Esc>     This key releases  the anchor  if it  is set.  Pressing
  1143.                        <Esc>  when the  anchor  is not  set cancels  the range
  1144.                        selection, and returns  you to whatever you  were doing
  1145.                        before you were asked to define a range.
  1146.  
  1147.              <F4>      This key  cycles the  range cell  references among  the
  1148.                        absolute and  relative types. If no anchor  is set then
  1149.                        the first  coordinate is  adjusted. If  the anchor  has
  1150.  
  1151.  
  1152.                                           13
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.                        been  set   then  <F4>   will  adjust   the  non-anchor
  1162.                        reference.
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.         BUILT-IN @FUNCTIONS
  1169.         InstaCalc  provides  built-in functions  which  you  can use  in  your
  1170.         formulas.  These  built-in functions each begin with  the character @,
  1171.         and are often called at functions.  A detailed list of these functions
  1172.         is in Built-In Functions in the reference section of this manual.
  1173.  
  1174.  
  1175.  
  1176.  
  1177.         USING THE COMMAND MENUS
  1178.         When you want  to execute a command  in InstaCalc, it will  usually be
  1179.         through InstaCalc's menu system.  A menu is simply a list  of commands
  1180.         which you can pick from.  Through  the menus you can manipulate cells,
  1181.         ranges,  or the  entire  Worksheet, graph  or  print data,  manipulate
  1182.         files, or even temporarily exit to the operating system.
  1183.  
  1184.         To bring up  InstaCalc's menu system, you simply press the  / key.  If
  1185.         you are  using a mouse, then you may  also press the left mouse button
  1186.         to bring up the menu.
  1187.  
  1188.         The menu system  uses a sliding bar  to show your choices.   There are
  1189.         three ways you can choose an option:
  1190.  
  1191.              -  Press the  <Left>  or <Right>  key  until the  sliding  bar is
  1192.              highlighting the option you want.  Then press <Enter> to make the
  1193.              choice.   The <Home> key  can be  pressed to highlight  the first
  1194.              menu choice, and  pressing the <End> key will  highlight the last
  1195.              menu choice.
  1196.  
  1197.              -  If you  are using  a mouse, you  may move  the sliding  bar by
  1198.              moving  the  mouse back  and forth.    Move the  mouse  until the
  1199.              sliding bar is highlighting the option  you want.  Then press the
  1200.              left mouse button to make the choice.
  1201.  
  1202.              -  As a shortcut you  can simply press  the highlighted letter of
  1203.              the desired  item (usually  the first character)  to select  that
  1204.              option.
  1205.  
  1206.         A help  line appears  above the main  menu.   This line  describes the
  1207.         highlighted menu option.  When you move the sliding bar to a new item,
  1208.         this help line will change to  display a line of help about the  newly
  1209.         highlighted item.
  1210.  
  1211.         When you choose  an option from the  menu, a new  submenu will pop  up
  1212.         which works the same as the main menu.  As each new submenu is chosen,
  1213.         the previous  menus remain on-screen,  providing you with a  "tree" of
  1214.         your commands.  To  go back one level, simply press  the <Esc> key (or
  1215.         the right mouse  button).  To clear all  the menus from the  screen at
  1216.         once, press the <BkSp> key (or both mouse buttons simultaneously.
  1217.  
  1218.  
  1219.  
  1220.                                           14
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.         A detailed list  of menu commands  can be  found in InstaCalc  Command
  1230.         Menus in the reference section of this manual.
  1231.  
  1232.  
  1233.  
  1234.         USING THE FUNCTION KEYS
  1235.         Several of InstaCalc's commands are assigned to one of the 10 function
  1236.         keys instead of  or in addition to  the command menus.   Several other
  1237.         commands are also assigned to one of the function keys with the <Ctrl>
  1238.         key pressed.   To execute one of these  commands, simply hold down the
  1239.         <Ctrl> key and then press the appropriate function key.
  1240.  
  1241.  
  1242.  
  1243.         SAVING AND RETRIEVING DATA
  1244.         As you are creating and using spreadsheets, your data is stored in the
  1245.         memory  of your  PC.    You should  store  your  spreadsheets on  disk
  1246.         periodically throughout the  day or session and definitely  at the end
  1247.         of  each  day.   In the  event  of a  power  outage or  if  you should
  1248.         forgetfully turn off the machine before a save has been done, the data
  1249.         entered since the last save to disk is lost.
  1250.  
  1251.         Saving         You can save your worksheet to a file on disk using the
  1252.                        /File  Save command.  If you  just want to save a small
  1253.                        part of your spreadsheet, the /File Xtract command will
  1254.                        provide that capability.
  1255.  
  1256.         Retrieving     When you  want to read  a file  off the disk  back into
  1257.                        memory, you should use the /File Retrieve command.
  1258.  
  1259.         Importing      The /File  Import command lets  you bring in  data from
  1260.                        just about any source  and use it in  your spreadsheet.
  1261.                        InstaCalc can  import data  from Lotus  1-2-3 (WKS  and
  1262.                        WK1), dBase II/III/III+ , DIF and ASCII files.
  1263.  
  1264.         Exporting      InstaCalc  can export  its  data  in several  different
  1265.                        formats,  and  most software  packages  are capable  of
  1266.                        reading  at least  one of them.   InstaCalc  can export
  1267.                        Lotus 1-2-3  (in two  forms, WKS or  WK1), dBase  II or
  1268.                        dBase III or III+, DIF, or ASCII files.
  1269.  
  1270.  
  1271.  
  1272.         USING THE FILE MANAGER
  1273.         InstaCalc provides many features designed to simplify its use.  One of
  1274.         these features  is the Visual  File Manager.  The  File Manager allows
  1275.         you to manipulate  files, directories, and  drives by simply  pointing
  1276.         and selecting.  It may be accessed by two methods.
  1277.  
  1278.              - Any time  you are asked for  a file name, pressing  the <Enter>
  1279.              key  without a file  name will bring the  File Manager forward to
  1280.              assist you.
  1281.  
  1282.              - To  access the  complete listing of  files, select  /File Files
  1283.              from the command menu.
  1284.  
  1285.  
  1286.  
  1287.  
  1288.                                           15
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.         CHANGING YOUR SPREADSHEET'S APPEARANCE
  1298.         InstaCalc lets you change the way numbers are displayed  on the screen
  1299.         by  assigning a  "format" to  cells.   You  might set  a  cell to  the
  1300.         Currency format, for example, so that the number in that cell  will be
  1301.         displayed with a leading  dollar sign.  Changing the format  of a cell
  1302.         does not  change the  value stored  in the cell,  only the  way it  is
  1303.         displayed on the screen (and printouts).
  1304.  
  1305.         Normally, when you enter data into  a cell, the cell will take on  the
  1306.         global  (Worksheet)  format.   You  can  see what  this  format is  by
  1307.         pressing  <Ctrl><F8> to  bring up  the status  window.   The Worksheet
  1308.         format may be changed by using the /Worksheet Format command.
  1309.  
  1310.         The format of an individual cell may be changed using the /Cell Format
  1311.         command, and the format  of a range of cells may  be changed using the
  1312.         /Range Format command.   You should use care when formatting ranges of
  1313.         blank cells, because formatted cells use up memory, even if the cells'
  1314.         contents are blank.
  1315.  
  1316.         A cell may be set to any of the following formats:
  1317.  
  1318.         General   The value  is displayed  with only  the necessary  number of
  1319.                   decimal places.
  1320.  
  1321.         Currency  The value  is displayed with  a preceding dollar sign  and a
  1322.                   selected  number  of  decimal  places.    If  the  value  is
  1323.                   negative, the value  is enclosed in parentheses  rather than
  1324.                   displayed with a negative sign.  There are two sub-options:
  1325.  
  1326.                   Comma     A comma will be inserted every three whole digits.
  1327.                             (Example: $103,297.25)
  1328.  
  1329.                   NoComma   No comma is inserted in the number.
  1330.  
  1331.  
  1332.         Fixed     The  value  is displayed  with  a  fixed number  of  decimal
  1333.                   places.   Values  which are  very large  or very  small will
  1334.                   appear  in  scientific  notation.     Four  sub-options  are
  1335.                   available:
  1336.  
  1337.                   Comma     A  comma will be inserted every three whole digits
  1338.                             (Example:  12,345.67).     Negative   numbers  are
  1339.                             preceded by a negative sign.
  1340.  
  1341.                   NoComma   No  comma is  inserted in  the  number.   Negative
  1342.                             numbers are preceded by a negative sign.
  1343.  
  1344.                   A ()      No  comma is  inserted in  the  number.   Negative
  1345.                             numbers are enclosed in parentheses.
  1346.  
  1347.                   B (,)     A comma will be inserted every three whole digits.
  1348.                             Negative numbers are enclosed in parentheses.
  1349.  
  1350.         Percent   The value is  displayed as a percentage with  a fixed number
  1351.                   of decimal places.   The value is multiplied by  100, and is
  1352.                   displayed with  a trailing percent sign %.   Two sub-options
  1353.                   are available:
  1354.  
  1355.  
  1356.                                           16
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.                   Comma     A comma will be inserted every three whole digits.
  1366.                             (Example: 1,024%)
  1367.  
  1368.                   NoComma   No comma is inserted in the number.
  1369.  
  1370.         Science   The value  is displayed in  exponential form, and  shows the
  1371.                   power  of 10 that  the number  must be  multiplied by.   For
  1372.                   example, 1.78E+07 means 1.78 times 10^7.
  1373.  
  1374.         Time      A time number (usually provided by one of the InstaCalc time
  1375.                   functions) is displayed in one of two ways.
  1376.  
  1377.                   AM/PM     The time appears in the  a.m. or p.m. form.  Thus,
  1378.                             5:00 in the evening appears as 5:00 p.m.
  1379.  
  1380.                   Military  The time appears  as it would on a  24-hour clock.
  1381.                             Thus, 5:00 in the evening appears as 17:00.
  1382.  
  1383.         Date      A date number (usually provided by one of the InstaCalc date
  1384.                   functions) is displayed in one of five ways.
  1385.  
  1386.                   dd-mmm-yy      June 10, 1960 appears as 10-Jun-60.
  1387.                   dd-mmm         June 10, 1960 appears as 10-Jun.
  1388.                   mmm-yy         June 10, 1960 appears as Jun-60.
  1389.                   mm/dd/yy       June 10, 1960 appears as 06/10/60.
  1390.                   month dd, yyyy June 10, 1960 appears as June 10, 1960.
  1391.  
  1392.         Hidden    The value will not be displayed on the screen.  If you later
  1393.                   want to unhide  a hidden cell, simply  set it to any  of the
  1394.                   other formats.
  1395.  
  1396.         Label     All formulas (rather than their values) will be displayed on
  1397.                   screen.
  1398.  
  1399.         Reset     Resets the cell to the default format.
  1400.  
  1401.  
  1402.         If the formatted value  contains more characters than the width of the
  1403.         column  it is  in,  the cell  display will  be  filled with  a  row of
  1404.         asterisks like  *******.   You can fix  this condition  in one  of two
  1405.         ways.
  1406.  
  1407.              -  Select a  display format  for  the cell  which requires  fewer
  1408.              characters to display  (or reduce the number of  digits after the
  1409.              decimal point to be displayed).
  1410.  
  1411.              - Increase the width of the column so the formatted cell will fit
  1412.              in it.  You can do this with the /Cell Width command.
  1413.  
  1414.  
  1415.  
  1416.         PRINTING YOUR DATA
  1417.         InstaCalc allows you to print out the  data you have entered and gives
  1418.         you control over what is printed and  how the printout looks.  You can
  1419.         print your  entire worksheet  or any portion  of it,  including border
  1420.         rows and columns.
  1421.  
  1422.  
  1423.  
  1424.                                           17
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.         Just define the range to print with the /Print Block command,  set any
  1434.         options  using the /Print Options command,  then send the data to your
  1435.         printer with the /Print Go command.
  1436.  
  1437.         More details on printing is available in the reference section of this
  1438.         manual.
  1439.  
  1440.  
  1441.  
  1442.         GRAPHING YOUR DATA
  1443.         Once  your data  has been  entered InstaCalc  can provide  you with  a
  1444.         graphic representation of that data in only a few keystrokes.
  1445.  
  1446.         For example, if you wanted to print a bar graph of your data:
  1447.  
  1448.         1.  Select /Graph from the main menu to begin.
  1449.  
  1450.         2.  Select the  Type option.   A menu will appear  from which you  may
  1451.         select the graph type.  Select Bar from the menu.
  1452.  
  1453.         3.  Next, you must tell InstaCalc what data you wish  to have graphed.
  1454.         This is done  by defining a  range of data  for each axis.   The  menu
  1455.         allows  you to define the range of data  to graph on the X axis and up
  1456.         to 6  data ranges to graph along the Y axis.  These ranges are named A
  1457.         through F on the menu.
  1458.  
  1459.         4.   You may add titles,  labels, and legends to your  graph using the
  1460.         Options selection.
  1461.  
  1462.         5.  You can now view your graph by selecting View from the menu.  When
  1463.         you are  satisfied with the choices that you  have made, you may Print
  1464.         your graph.
  1465.  
  1466.  
  1467.  
  1468.         RECORDING A MACRO
  1469.         Although  InstaCalc's  macro  language is  powerful  enough  to create
  1470.         sophisticated business  applications, there  are many  times when  you
  1471.         will want  to simply repeat  a sequence  of keystrokes over  and over.
  1472.         InstaCalc's Macro  Recorder provides  an easy way  to create  and play
  1473.         back often  repeated key sequences.  The  macro recorder allows you to
  1474.         assign a sequence  of keystrokes to a  single key, and when  you press
  1475.         that single  key,  it  will  automatically  play  back  the  keystroke
  1476.         sequence for you.
  1477.  
  1478.         To begin recording a macro, you simply press the <Ctrl><F10> key.  You
  1479.         then press the key you want  to assign the macro to, and the  word REC
  1480.         will begin flashing  in the upper right corner of the screen.  As long
  1481.         as  REC  is  flashing,  InstaCalc   will  be  memorizing  any  further
  1482.         keystrokes you type.  When you want  to stop recording, just press the
  1483.         <Ctrl><F10> key again.  Your macro will be stored in a file whose name
  1484.         corresponds to  the key  you assigned the  macro to.   For  example, a
  1485.         macro assigned to <Ctrl>T would be named CTRLT.MAC.
  1486.  
  1487.         Later, when you press <Ctrl>T, InstaCalc  will look for the macro file
  1488.         CTRLT.MAC, and play  back the keystrokes which  are saved there.   You
  1489.         can assign a macro to just  about any key which isn't already  defined
  1490.  
  1491.  
  1492.                                           18
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.         and used by InstaCalc.  For example, you can't redefine the arrow keys
  1502.         to do  something else, but  you can assign other  keys to do  the same
  1503.         thing as the arrow keys.  
  1504.  
  1505.  
  1506.         THE INSTACALC TEXT EDITOR
  1507.         InstaCalc  provides a simple  text editor which you  can use to create
  1508.         and edit your application  programs.  This editor can be  called up in
  1509.         two different ways.
  1510.  
  1511.              - The /Macro  Edit command will ask you for the  name of a macro.
  1512.              You may enter a file name, or press <Enter> to select a file from
  1513.              the file manager.  You will then be placed in the  InstaCalc text
  1514.              editor.
  1515.  
  1516.              - You  may press <F5> when you are  using the /File Files command
  1517.              to edit the highlighted file.
  1518.  
  1519.         Details on the Text Editor are provided in the /Macro Edit  section of
  1520.         this manual.
  1521.  
  1522.  
  1523.         THE INSTACALC MACRO LANGUAGE
  1524.         In  addition to  the macro  recorder,  InstaCalc provides  a built  in
  1525.         programming language  which provides  additional capabilities such  as
  1526.         windowing,  menu creation,  control structures,  and  printer and  DOS
  1527.         access.
  1528.  
  1529.         An  InstaCalc application  program  simply  consists  of a  text  file
  1530.         containing  the commands  which you  would like InstaCalc  to execute.
  1531.         You may give your program files any valid DOS name, but  the extension
  1532.         must be .MAC  (for example MYPROG.MAC).  Your  application program can
  1533.         consist  of  keystroke  macros,  InstaCalc  Command Environment  (ICE)
  1534.         commands, or both.
  1535.  
  1536.         The InstaCalc Command  Environment also provides the  ability to debug
  1537.         your macros.   For  more details on  ICE and  macros, see  the section
  1538.         titled INSTACALC APPLICATIONS.
  1539.  
  1540.  
  1541.  
  1542.         CUTTING DATA FROM OTHER PROGRAMS
  1543.         InstaCalc provides the ability to import data directly from the screen
  1544.         of another program into the worksheet.  This allows you to import text
  1545.         and numbers from your word processor, data  base manager, or any other
  1546.         type of program.   You may import  multiple columns off the  screen at
  1547.         the same time.
  1548.  
  1549.         When you are in your  application program and you want to  cut data on
  1550.         the screen into InstaCalc:
  1551.  
  1552.              - Press  the Hot Key (InstaCalc must  have been loaded before you
  1553.              started  up  your   application  program).    This  will  pop  up
  1554.              InstaCalc.
  1555.  
  1556.              - Move the cell pointer to the cell where you want the first line
  1557.              of the imported data to be placed.
  1558.  
  1559.  
  1560.                                           19
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.              - Press <F7>Cut.  This will switch the display back to the screen
  1570.              you want to cut from.
  1571.  
  1572.              - Use the arrow  keys to move the cursor to the upper left corner
  1573.              of the block you want  to cut, then press  the period key.   This
  1574.              sets the anchor for the block.
  1575.  
  1576.              - Use the arrow keys to begin marking the block you  want to cut.
  1577.              The block will be highlighted on the screen.
  1578.  
  1579.              - Once  you have highlighted the  column you want to  cut, either
  1580.              press <Enter> to cut  that column, or press the period  key again
  1581.              to set the anchor for another column.
  1582.  
  1583.              - If you choose  to cut more than one column off  the screen at a
  1584.              time, continue to  set the anchor, highlight the  column, set the
  1585.              anchor for the next column and so  on.  Once you have highlighted
  1586.              all of  the  columns you  want to  cut, press  <Enter> to  finish
  1587.              cutting the data from the screen.
  1588.  
  1589.              - Pressing <Esc> at any time will cancel the last selection.
  1590.  
  1591.  
  1592.         PASTING DATA TO OTHER PROGRAMS
  1593.         InstaCalc  provides  the ability  to  paste  data  from the  Worksheet
  1594.         directly into another  program.  This allows you  to paste spreadsheet
  1595.         data  directly  into a  word  processor  document or  database  record
  1596.         without even having to exit your program.
  1597.  
  1598.         When you want to paste spreadsheet data into another program:
  1599.  
  1600.              - Make sure the cursor in the other program is where you want the
  1601.              exported data to  be placed.  If you are pasting into your editor
  1602.              or word processor, make sure  any "auto indent" feature is turned
  1603.              off, or each  line of the pasted  data will shift further  to the
  1604.              right.
  1605.  
  1606.              -  Press the Hot Key (InstaCalc must  have been loaded before you
  1607.              started  up   your  application  program).    This  will  pop  up
  1608.              InstaCalc.
  1609.  
  1610.              - Press <F8>Paste.
  1611.  
  1612.              - Use the arrow keys to move the cursor  to the upper left corner
  1613.              of  the block you want to paste, then press the period key.  This
  1614.              sets the anchor for the block.
  1615.  
  1616.              - Use  the arrow  keys to  begin marking  the block  you want  to
  1617.              paste.  The block will be highlighted on the screen.
  1618.  
  1619.              -  Once you have  highlighted the block you  want to paste, press
  1620.              <Enter> to select that block for pasting.
  1621.  
  1622.              -  Select the  key you want  each row  terminated with.   You may
  1623.              select <Enter>, <Down>, or <Right>.
  1624.  
  1625.              - Pressing <Esc> at any time will cancel the last selection.
  1626.  
  1627.  
  1628.                                           20
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.         REFERENCE
  1638.  
  1639.  
  1640.         THE FUNCTION KEYS
  1641.         Several of InstaCalc's commands are assigned to one of the 10 function
  1642.         keys instead of  or in addition to  the command menus.   Several other
  1643.         commands are also assigned to one of the function keys with the <Ctrl>
  1644.         key pressed.  To  execute one of these commands, simply  hold down the
  1645.         <Ctrl> key and then press the appropriate function key.
  1646.  
  1647.         <F1> Help      This key calls up context sensitive help.
  1648.  
  1649.         <F2> Edit      This key allows you to edit the current cell.
  1650.  
  1651.         <F3> Range     This key  calls up a menu of defined range names.  This
  1652.                        key can be used any time you are asked to define a cell
  1653.                        or  range.   You may  pick a  range from  this list  by
  1654.                        highlighting the name and pressing the <Enter> key.  If
  1655.                        there  are more than  16 range  names defined,  you may
  1656.                        press  the <PgUp>  and <PgDn> keys  to view  more range
  1657.                        names.
  1658.  
  1659.         <F4> Absolute  This key cycles  absolute and relative  references when
  1660.                        you  are pointing out  cell references with  the cursor
  1661.                        keys.  If no anchor is set then the first coordinate is
  1662.                        adjusted. If  the anchor  has been  set then <F4>  will
  1663.                        adjust the non-anchor reference.
  1664.  
  1665.         <F5> GoTo      This key allows you to move the cell pointer to another
  1666.                        cell.  You  will be asked for  the name of the  cell to
  1667.                        move  to.  For example, if you enter Q23, then the cell
  1668.                        pointer will  be moved  to that cell.   If you  enter a
  1669.                        range name, then the cell  pointer will be moved to the
  1670.                        cell in the  upper left corner of  the range.  You  may
  1671.                        also press  the <F3>  Range key and  pick a  range name
  1672.                        from a menu of existing names.
  1673.  
  1674.         <F6> Search    This key allows you  to search for some text in a cell,
  1675.                        and allows you to move the cell pointer to that cell or
  1676.                        replace the text with other text.
  1677.  
  1678.                        Find           This option allows you to enter the text
  1679.                                       you want to search for.
  1680.  
  1681.                        Replace with   This option allows you to enter the text
  1682.                                       you want to replace the Find text with.
  1683.  
  1684.                        Ignore case    If you set  this option to No,  then the
  1685.                                       Find  text   must  match  text   in  the
  1686.                                       Worksheet  exactly  to be  considered  a
  1687.                                       match.   If this option is Yes, then the
  1688.                                       Find  text   will  match  text   in  the
  1689.                                       Worksheet if the  letters are the  same,
  1690.                                       even if some are uppercase and  some are
  1691.                                       lower case.
  1692.  
  1693.                        Block          This  option allows  you  to define  the
  1694.  
  1695.  
  1696.                                           21
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.                                       range of cells you want to search.  This
  1706.                                       allows  you to  limit your search  to as
  1707.                                       small a range of cells as you want.
  1708.  
  1709.                        Start          This  command  begins   the  search  and
  1710.                                       replace operation.  InstaCalc will begin
  1711.                                       searching through the defined range, and
  1712.                                       will  stop when it  finds a match.   The
  1713.                                       matching cell  and its contents  will be
  1714.                                       displayed, and you will be  asked if you
  1715.                                       want to  perform the Replace.  There are
  1716.                                       4 options.
  1717.  
  1718.                                       No   No, don't perform  the replace, but
  1719.                                            continue searching.
  1720.  
  1721.                                       Yes  Yes, perform the  replace, and then
  1722.                                            continue searching.
  1723.  
  1724.                                       All  Yes, perform  the replace  on this,
  1725.                                            and  all  other matches  which  you
  1726.                                            find.  This is  a global search and
  1727.                                            replace, and you will  not be asked
  1728.                                            for any further confirmation.
  1729.  
  1730.                                       GoTo No, don't perform  the replace, and
  1731.                                            just move the cell pointer to  this
  1732.                                            new  cell  and   quit  any  further
  1733.                                            searching.
  1734.  
  1735.                                       If you just  want to quit, then  you can
  1736.                                       simply press the <Esc> key.
  1737.  
  1738.         <F7> Cut       This key allows you  to cut data off the screen  of the
  1739.                        program you popped up through (if you started InstaCalc
  1740.                        with the  /p option).   See the section  titled Cutting
  1741.                        Data From Other Programs.
  1742.  
  1743.         <F8> Paste     This key allows you  to paste data from InstaCalc  into
  1744.                        the  program  you  popped up  through  (if  you started
  1745.                        InstaCalc with the /p option).   See the section titled
  1746.                        Pasting Data To Other Programs.
  1747.  
  1748.         <F9> Recalc    This key  recalculates  the  entire  worksheet.    This
  1749.                        command  is only  necessary  when  you  have  used  the
  1750.                        /Worksheet  Calc Manual  command  to disable  automatic
  1751.                        recalculation.
  1752.  
  1753.         <F10> Graph    This  key displays the  currently defined graph.   This
  1754.                        key is simply a shortcut for the /Graph View command.
  1755.  
  1756.         <^F1> Help     This key brings up the Help Index of the help system.
  1757.  
  1758.         <^F2> Debug    This key brings  up the application program  debug menu
  1759.                        when  you are  single stepping  through an  application
  1760.                        program.   Simply select Edit from the  menu, then type
  1761.                        in the name of the cell you want to examine.  InstaCalc
  1762.  
  1763.  
  1764.                                           22
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.                        will display the current contents of the cell, and will
  1774.                        allow you to  modify those contents if you  want.  When
  1775.                        you  press  <Enter>, the  InstaCalc will  resume single
  1776.                        stepping through the application.
  1777.  
  1778.         <^F3> Break    This key breaks  out of a running application.   If you
  1779.                        press  this key when an application program is running,
  1780.                        it will  abort the  application unless  the application
  1781.                        program  has  used   the  #BREAK  command   to  disable
  1782.                        breaking.
  1783.  
  1784.         <^F4> Mark     This key marks  the current cell so that  you can later
  1785.                        return to it with the  <Ctrl><F5> key.  For example, if
  1786.                        you press <Ctrl><F4> when  the cell pointer is  on cell
  1787.                        Q53, then  you can move  anywhere in the  worksheet and
  1788.                        return  to cell Q53  by simply pressing  the <Ctrl><F5>
  1789.                        key.
  1790.  
  1791.         <^F5> ToMark   This  key  returns   to  the  last  cell   marked  with
  1792.                        <Ctrl><F4>.
  1793.  
  1794.         <^F6> Files    This key calls up the File  Manager.  You will be asked
  1795.                        to enter a mask to  tell InstaCalc which files you want
  1796.                        to be  displayed.  Pressing  <Enter> will use  the Mask
  1797.                        *.*, which will display all of the files in the current
  1798.                        directory.
  1799.  
  1800.         <^F7> EGA43    This key toggles  43/50 line mode on  EGA/VGA monitors.
  1801.                        If you have an EGA or VGA monitor, this function allows
  1802.                        you to see twice as many rows on the screen as normal.
  1803.  
  1804.         <^F8> Status   This key displays a  status window.  The  status window
  1805.                        lists the current  directory and file name,  the amount
  1806.                        of memory available, the current date and time, and the
  1807.                        current default settings.
  1808.  
  1809.         <^F9> Enter    This key toggles Enter mode.   This mode is  especially
  1810.                        useful for  repetitive data  entry.   When  you are  in
  1811.                        Enter mode, pressing the <Enter> key to enter data into
  1812.                        a  cell will  enter that  data and  them move  the cell
  1813.                        pointer in the last  direction moved.  For  example, if
  1814.                        the  cell pointer  last  moved down,  then typing  in a
  1815.                        number and pressing <Enter> will enter that number into
  1816.                        the  highlighted cell, and  will move the  cell pointer
  1817.                        down to the  next cell.   This  allows you  to use  the
  1818.                        numeric  keypad and the  <Enter> key  to enter  rows or
  1819.                        columns of data.
  1820.  
  1821.         <^F10> Learn   This  key turns  the macro  recorder on  and off.   The
  1822.                        macro  recorder  allows  you to  assign  a  sequence of
  1823.                        keystrokes to  a single key,  and when  you press  that
  1824.                        single  key,  it  will  automatically   play  back  the
  1825.                        keystroke sequence for you.
  1826.  
  1827.                        If  a macro  already exists  for  the key  you want  to
  1828.                        record  to,  InstaCalc   will  provide  the   following
  1829.                        options:
  1830.  
  1831.  
  1832.                                           23
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.                        Replace   Replace the existing macro with this new one.
  1842.  
  1843.                        Edit      Edit the existing macro.
  1844.  
  1845.                        Cancel    Cancel this operation.
  1846.  
  1847.  
  1848.  
  1849.  
  1850.         INSTACALC COMMAND MENUS
  1851.         When you want  to execute a command  in InstaCalc, it will  usually be
  1852.         through InstaCalc's menu  system.  A menu is simply a list of commands
  1853.         which you can pick from.  Through the menus you can  manipulate cells,
  1854.         ranges,  or  the entire  Worksheet,  graph or  print  data, manipulate
  1855.         files, or even temporarily exit to the operating system.
  1856.  
  1857.         To bring up  InstaCalc's menu system, you  simply press the /  key (or
  1858.         press  the left button  on your mouse).   At the top  of the InstaCalc
  1859.         screen you will see the following menu.
  1860.  
  1861.         Cell Range Worksheet File Print Data Graph OpSys Quit
  1862.  
  1863.         The menu system uses  a sliding bar to  show your choices.   There are
  1864.         two ways to choose an option:
  1865.  
  1866.              - Press  the <Left>  or  <Right> key  until  the sliding  bar  is
  1867.              highlighting the option you want.  Then press <Enter> to make the
  1868.              choice.   The <Home> key  can be  pressed to highlight  the first
  1869.              menu choice, and  pressing the <End> key will  highlight the last
  1870.              menu choice.
  1871.  
  1872.              - As a  shortcut you can simply  press the highlighted  letter of
  1873.              the desired  item (usually the  first character)  to select  that
  1874.              option.
  1875.  
  1876.         A  help line  appears above the  main menu.   This line  describes the
  1877.         highlighted menu option.  When you move the sliding bar to a new item,
  1878.         this help  line will change to display a  line of help about the newly
  1879.         highlighted item.
  1880.  
  1881.         When you  choose an option  from the menu, a  new submenu will  pop up
  1882.         which  works exactly  the same  way  as the  main menu.   As  each new
  1883.         submenu  is chosen, the previous menus remain on-screen, providing you
  1884.         with a "tree" of your  commands.  To go  back one level, simply  press
  1885.         the <Esc> key.   To clear all  of the menus  from the screen at  once,
  1886.         press the <BkSp> key.
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895.  
  1896.  
  1897.  
  1898.  
  1899.  
  1900.                                           24
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.         ---------------------------------------------------------------------
  1910.         /Cell Format
  1911.         ---------------------------------------------------------------------
  1912.         Function  Change the way a value in a cell is displayed.
  1913.  
  1914.         Remarks   This command allows you to modify the display of the current
  1915.                   cell by setting its format.   If the value using the  format
  1916.                   you  select is  too long  to  fit into  the cell's  assigned
  1917.                   width, a row of asterisks will appear.
  1918.  
  1919.         Options   General,  Currency,  Fixed,  Percent,  Science, Time,  Date,
  1920.                   Hidden, Label, Reset
  1921.  
  1922.  
  1923.         ---------------------------------------------------------------------
  1924.         /Cell Width
  1925.         ---------------------------------------------------------------------
  1926.         Function  Change a column width.
  1927.  
  1928.         Remarks   This command allows you to  make the column the cell pointer
  1929.                   is in wider or narrower (or even hide it).
  1930.  
  1931.         Options   The /Cell Width command has two options:
  1932.  
  1933.                   Set       The set  option allows  you to  change the  width.
  1934.                             You  will be asked how  wide the column should be.
  1935.                             You may  either enter a  number, or use  the arrow
  1936.                             keys to change the width.  <Left>  will narrow the
  1937.                             column, and <Right> will widen the column.
  1938.  
  1939.                   Reset     Resets the  column the cell  pointer is in  to the
  1940.                             global width.
  1941.  
  1942.  
  1943.         ---------------------------------------------------------------------
  1944.         /Cell Erase
  1945.         ---------------------------------------------------------------------
  1946.         Function  Erase a cell from memory.
  1947.  
  1948.         Remarks   This command erases  the contents of the current  cell.  The
  1949.                   cell will retain its formatting.
  1950.  
  1951.  
  1952.  
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.                                           25
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.         ---------------------------------------------------------------------
  1978.         /Cell Justify
  1979.         ---------------------------------------------------------------------
  1980.         Function  Justify text in a cell.
  1981.  
  1982.         Remarks   This command allows  you to change the way  text strings are
  1983.                   displayed  in the cell  which the cell  pointer is  in.  The
  1984.                   command has three options:
  1985.  
  1986.         Options   Left      Justifies text  in the  current cell  to the  left
  1987.                             edge of  the cell.   When a  label is  entered, it
  1988.                             will appear beginning in the leftmost character of
  1989.                             the cell.
  1990.  
  1991.                   Right     Justifies  text in the  current cell to  the right
  1992.                             edge of  the cell.   When a  label is  entered, it
  1993.                             will appear flush right in the cell.
  1994.  
  1995.                   Center    Justifies text in  the current cell to  the center
  1996.                             of the  cell.   When a label  is entered,  it will
  1997.                             appear centered in the cell.
  1998.  
  1999.  
  2000.  
  2001.         ---------------------------------------------------------------------
  2002.         /Cell Copy
  2003.         ---------------------------------------------------------------------
  2004.         Function  Copy a cell to another cell or range of cells.
  2005.  
  2006.         Remarks   This command copies  the contents of the cell  that the cell
  2007.                   pointer is  in to another cell or range  of cells.  You will
  2008.                   be asked to  define the cell or  range of cells you  want to
  2009.                   copy to.   If you  copy the cell to  more than one  cell, an
  2010.                   individual  copy will  be made  in  each of  the destination
  2011.                   cell.  If  the source cell contains a  formula, all relative
  2012.                   references will be adjusted when the formula is copied.
  2013.  
  2014.         Example   Cell B12 sums up the cells above it with the formula:
  2015.  
  2016.                   =@SUM(B1..B11)
  2017.  
  2018.                   You want  cells C12 through  X12 to sum  up the cells  above
  2019.                   each of  them.   Simply move the  cell pointer to  cell B12,
  2020.                   select  /Cell Copy,  and  define  the range  to  copy to  as
  2021.                   C12..X12.   The  formula will  be  copied to  each of  those
  2022.                   cells,  and the relative  references in the  formula will be
  2023.                   adjusted so that they sum up the proper cells.  For example,
  2024.                   cell S12 will contain the formula:
  2025.  
  2026.                   =@SUM(S1..S11)
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.                                           26
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.         ---------------------------------------------------------------------
  2046.         /Cell Move
  2047.         ---------------------------------------------------------------------
  2048.         Function  Move the contents of a cell to another cell.
  2049.  
  2050.         Remarks   This command  moves the contents  of the cell that  the cell
  2051.                   pointer is in to a different location.  You will be asked to
  2052.                   define the destination cell.  If the current cell contains a
  2053.                   formula, then  the references will  be adjusted to  point to
  2054.                   the same data.  References in other cells which refer to the
  2055.                   moved cell  will also be  adjusted so that they  continue to
  2056.                   point to the same data.
  2057.  
  2058.  
  2059.  
  2060.         ---------------------------------------------------------------------
  2061.         /Cell Protect
  2062.         ---------------------------------------------------------------------
  2063.         Function  Set protection on a cell.
  2064.  
  2065.         Remarks   This command allows the current cell to be protected against
  2066.                   changes.  If, for example,  the cell contains a formula that
  2067.                   you do not  want changed, use the /Cell  Protect Yes command
  2068.                   to guard against changes.  If you thereafter want to edit or
  2069.                   change that  formula, use  the /Cell  Protect No  command to
  2070.                   unprotect the cell.  The default mode is "protected."
  2071.  
  2072.                   A  protected  cell  may still  be  modified  until Worksheet
  2073.                   protection is  enabled using  the /Worksheet  Protect Enable
  2074.                   command.  Worksheet Protect  is much like a "master  switch"
  2075.                   which  turns  protection  capabilities on  and  off  for the
  2076.                   entire Worksheet.
  2077.  
  2078.         Options   Yes  Enables protection on the current cell.
  2079.                   No   Disables protection on the current cell.
  2080.  
  2081.  
  2082.  
  2083.  
  2084.         ---------------------------------------------------------------------
  2085.         /Range Format
  2086.         ---------------------------------------------------------------------
  2087.         Function  Change the way values in a range of cells is displayed.
  2088.  
  2089.         Remarks   This command  allows you to  choose the best format  for the
  2090.                   cells in a range.  You will  be asked to define the range of
  2091.                   cells you want to change the format of.
  2092.  
  2093.         Options   General,  Currency,  Fixed,  Percent, Science,  Time,  Date,
  2094.                   Hidden, Label, Reset
  2095.  
  2096.  
  2097.  
  2098.  
  2099.  
  2100.  
  2101.  
  2102.  
  2103.  
  2104.                                           27
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.         ---------------------------------------------------------------------
  2114.         /Range Width
  2115.         ---------------------------------------------------------------------
  2116.         Function  Set the width of several columns at once.
  2117.  
  2118.         Remarks   This command  allows you to  make several  columns wider  or
  2119.                   narrower (or even hide them).   You will be asked to  define
  2120.                   the range of columns to widen or narrow.
  2121.  
  2122.         Options   The /Range Width command has two options:
  2123.  
  2124.                   Set       The set option allows  you to change the width  of
  2125.                             several columns at the same  time.  You may either
  2126.                             enter a number,  or use the  arrow keys to  change
  2127.                             the width.   <Left>  will narrow  the column,  and
  2128.                             <Right> will widen the column.
  2129.  
  2130.                   Reset     Resets  the columns  in the  range  to the  global
  2131.                             width.
  2132.  
  2133.  
  2134.         ---------------------------------------------------------------------
  2135.         /Range Erase
  2136.         ---------------------------------------------------------------------
  2137.         Function  Erase a range of cell's contents from memory.
  2138.  
  2139.         Remarks   This  command erases the contents of a  range of cells.  You
  2140.                   will  be asked  to define  the range  of cells  you want  to
  2141.                   erase.
  2142.  
  2143.  
  2144.         ---------------------------------------------------------------------
  2145.         /Range Justify
  2146.         ---------------------------------------------------------------------
  2147.         Function  Justify text in a range of cells.
  2148.  
  2149.         Remarks   This command allows  you to change the way  text strings are
  2150.                   displayed in each  cell in a  range.  You  will be asked  to
  2151.                   define the range of cells you want to change.
  2152.  
  2153.         Options   Left      Justifies text in  each cell of  the range to  the
  2154.                             left edge of  the cell.  When a  label is entered,
  2155.                             it will appear beginning in the leftmost character
  2156.                             of the cell.
  2157.  
  2158.                   Right     Justifies  text in each  cell of the  range to the
  2159.                             right edge of the cell.   When a label is entered,
  2160.                             it will appear flush right in the cell.
  2161.  
  2162.                   Center    Justifies text in  each cell of  the range to  the
  2163.                             center of the  cell.  When a label  is entered, it
  2164.                             will appear centered in the cell.
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.                                           28
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.         ---------------------------------------------------------------------
  2182.         /Range Copy
  2183.         ---------------------------------------------------------------------
  2184.         Function  Copy a range of cells to another location.
  2185.  
  2186.         Remarks   This  command copies  the contents  of a  range of  cells to
  2187.                   another location.   You  will first be  asked to  define the
  2188.                   cell or range of cells you want to copy (source  range), and
  2189.                   then the location you want to copy to (destination).  If the
  2190.                   destination  you define is  a single cell,  the source range
  2191.                   will  be   copied  starting  at  that  location.     If  the
  2192.                   destination  contains more than  one cell, the  source range
  2193.                   will be copied to each cell in the destination  range.  This
  2194.                   is useful for  copying a range of cells  to several adjacent
  2195.                   locations  at once.   If any  of the source  cells contain a
  2196.                   formula, all relative  references will be adjusted  when the
  2197.                   formula is copied.
  2198.  
  2199.         Example   Column A contains a list of formulas from row 1  through 10.
  2200.                   You want to copy this range of formulas to columns B through
  2201.                   F.  Select  /Range Copy, and select the range A1..A10 as the
  2202.                   source range.  Since you want to copy the range to columns B
  2203.                   through  F,  you  should  select  the range  B1..F1  as  the
  2204.                   destination.   InstaCalc will then copy  the source range to
  2205.                   each cell in the destination range.
  2206.  
  2207.  
  2208.  
  2209.  
  2210.         ---------------------------------------------------------------------
  2211.         /Range Move
  2212.         ---------------------------------------------------------------------
  2213.         Function  Move the contents of a range of cells.
  2214.  
  2215.         Remarks   This command  moves the contents  of a range  of cells  to a
  2216.                   different location.   You will be asked to  first define the
  2217.                   range  of  cells  to  move  (source  range),  and  then  the
  2218.                   destination.   If  any  of  the cells  in  the source  range
  2219.                   contains a  formula, then the references will be adjusted to
  2220.                   continue to  point to  the same data.   References  in other
  2221.                   cells which refer to the moved cell will also be adjusted so
  2222.                   that they continue to point to the same data.
  2223.  
  2224.                   When you define  the destination, you only need  to supply a
  2225.                   single cell  address; the source  range will be  copied with
  2226.                   the upper left corner in the destination cell.
  2227.  
  2228.  
  2229.         ---------------------------------------------------------------------
  2230.         /Range Name
  2231.         ---------------------------------------------------------------------
  2232.         Function  Give a name to a range of cells.
  2233.  
  2234.         Remarks   This command allows you to give a name to a cell or range of
  2235.                   cells.   This name  can then  be used  anywhere that  a cell
  2236.                   address or range  reference can be used by  either typing in
  2237.                   the  range's name  or by  pressing  the <F3>  Range key  and
  2238.  
  2239.  
  2240.                                           29
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.                   selecting the name from a menu.
  2250.  
  2251.         Options   Create    Allows you to  name the cell or range.   When this
  2252.                             option is selected, you are asked what you want to
  2253.                             name the cell or range.   The name must begin with
  2254.                             a  letter of  the  alphabet  and can  be  up to  8
  2255.                             characters long.  You are then asked to define the
  2256.                             range to name by typing in the range address or by
  2257.                             pointing out the range with the cursor keys.
  2258.  
  2259.                   Delete    Releases the range name which is associated with a
  2260.                             range.  You will  be asked to type in the  name to
  2261.                             delete.   You may  press <Enter> without  typing a
  2262.                             name, and a menu  of the current range  names will
  2263.                             appear, and you may select the name to delete from
  2264.                             the  menu.  Up to 16 names  will be displayed at a
  2265.                             time.   If  you don't  see  the name  you want  to
  2266.                             delete, use the <PgDn> and <PgUp> keys to see more
  2267.                             names.
  2268.  
  2269.                   Reset     Deletes all range names.
  2270.  
  2271.                   List      Causes  a list  of  the  current  range  names  to
  2272.                             appear.   Up to  16 names will  be displayed  at a
  2273.                             time.  Use <PgUp> and <PgDn> to see more names.
  2274.  
  2275.         Example   If you  assigned the  name PRICES to  the range  B3..C6, the
  2276.                   formula  @AVG(PRICES)  will  be  identical  to  the  formula
  2277.                   @AVG(B3..C6).  Other  /Range commands which request  a range
  2278.                   reference, such as /Range Erase,  will accept the name as an
  2279.                   address.  Pressing <F3> will bring up a menu of range names.
  2280.                   The <F5> GoTo key will also accept range names.
  2281.  
  2282.  
  2283.         ---------------------------------------------------------------------
  2284.         /Range Protect
  2285.         ---------------------------------------------------------------------
  2286.         Function  Set protection on a range of cells.
  2287.  
  2288.         Remarks   This  command allows you  to protect a range  of cells.  If,
  2289.                   for example, the  range contains  formulas that  you do  not
  2290.                   want changed,  use the /Range  Protect Yes command  to guard
  2291.                   against changes.  If you thereafter want to edit or change a
  2292.                   cell  in  the range,  use  the /Cell  Protect  No command to
  2293.                   unprotect the cell.  The default mode is "protected."
  2294.  
  2295.                   A  protected  cell  may still  be  modified  until Worksheet
  2296.                   protection is  enabled using  the /Worksheet  Protect Enable
  2297.                   command.  Worksheet  Protect is much like  a "master switch"
  2298.                   which  turns  protection  capabilities on  and  off  for the
  2299.                   entire Worksheet.
  2300.  
  2301.                   You will be asked to define the range you want to protect.
  2302.  
  2303.         Options   Yes  Enables protection on the selected range.
  2304.                   No   Disables protection on the selected range.
  2305.  
  2306.  
  2307.  
  2308.                                           30
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.         ---------------------------------------------------------------------
  2318.         /Worksheet Format
  2319.         ---------------------------------------------------------------------
  2320.         Function  Set the global default format.
  2321.  
  2322.         Remarks   This command  allows you to  choose a global format  for the
  2323.                   entire Worksheet.
  2324.  
  2325.         Options   General, Currency,  Fixed,  Percent,  Science,  Time,  Date,
  2326.                   Hidden, Label
  2327.  
  2328.  
  2329.         ---------------------------------------------------------------------
  2330.         /Worksheet Width
  2331.         ---------------------------------------------------------------------
  2332.         Function  Set the global default width.
  2333.  
  2334.         Remarks   This  command allows  you to  set the  default width  of all
  2335.                   columns in the Worksheet.  You will be prompted to enter the
  2336.                   new  global column width.  You may either enter a number, or
  2337.                   use the arrow  keys to change the width.  <Left> will narrow
  2338.                   the column, and <Right> will widen the column.
  2339.  
  2340.  
  2341.  
  2342.         ---------------------------------------------------------------------
  2343.         /Worksheet Erase
  2344.         ---------------------------------------------------------------------
  2345.         Function  Erase the worksheet from memory.
  2346.  
  2347.         Remarks   This  command   erases  the  current   Worksheet's  contents
  2348.                   entirely.  All  of the  Worksheet settings  are restored  to
  2349.                   their defaults.   You will  be asked to confirm  whether you
  2350.                   really want to erase the worksheet.
  2351.  
  2352.         Options   Yes  Erase the Worksheet from memory.
  2353.                   No   Don't erase the Worksheet from memory.
  2354.  
  2355.  
  2356.  
  2357.         ---------------------------------------------------------------------
  2358.         /Worksheet Justify
  2359.         ---------------------------------------------------------------------
  2360.         Function  Set the global default text justification.
  2361.  
  2362.         Remarks   This command allows  you to change the way  text strings are
  2363.                   displayed in each cell of  the Worksheet.  This command will
  2364.                   not change they  way existing text cells are  justified.  It
  2365.                   only  determines how  text  entered in  the  future will  be
  2366.                   displayed.  The command has three options:
  2367.  
  2368.         Options   Left      Justifies  text in cells  to the left  edge of the
  2369.                             cell.   When a  label is  entered, it will  appear
  2370.                             beginning in the leftmost character of the cell.
  2371.  
  2372.                   Right     Justifies text  in cells to the right  edge of the
  2373.                             cell.   When  a label  is entered, it  will appear
  2374.  
  2375.  
  2376.                                           31
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.                             flush right in the cell.
  2386.  
  2387.                   Center    Justifies text in cells to the center of the cell.
  2388.                             When a label  is entered, it will  appear centered
  2389.                             in the cell.
  2390.  
  2391.  
  2392.         ---------------------------------------------------------------------
  2393.         /Worksheet Ins Column
  2394.         ---------------------------------------------------------------------
  2395.         Function  Insert one or more blank columns.
  2396.  
  2397.         Remarks   This  command  inserts one  or  more  blank columns  at  the
  2398.                   current cell pointer position.   The current column  and all
  2399.                   the columns  to the right will be shifted right to make room
  2400.                   for the blank columns.  Relative references in formulas will
  2401.                   be  updated by the  change; absolute references  will remain
  2402.                   unchanged.   You will  be asked how  many blank  columns you
  2403.                   want to insert.   Use the  arrow keys to  highlight how  may
  2404.                   columns  should be  inserted.  If  you highlight  2 columns,
  2405.                   then 2 columns will be inserted.
  2406.  
  2407.  
  2408.         ---------------------------------------------------------------------
  2409.         /Worksheet Insert Row
  2410.         ---------------------------------------------------------------------
  2411.         Function  Insert one or more blank rows.
  2412.  
  2413.         Remarks   This command inserts  one or more blank rows  at the current
  2414.                   cell pointer  position.   The current row  and all  the rows
  2415.                   below  will be shifted down to make room for the blank rows.
  2416.                   Relative  references  in  formulas will  be  updated  by the
  2417.                   change; absolute references will remain unchanged.  You will
  2418.                   be asked how  many blank rows you  want to insert.   Use the
  2419.                   arrow keys  to highlight the  number of rows that  should be
  2420.                   inserted.   If you  highlight 3 rows,  then 3  rows will  be
  2421.                   inserted.
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.                                           32
  2445.  
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.         ---------------------------------------------------------------------
  2454.         /Worksheet Del Column
  2455.         ---------------------------------------------------------------------
  2456.         Function  Delete one or more columns.
  2457.  
  2458.         Remarks   This command deletes one or more columns at the current cell
  2459.                   pointer  position.  The contents of the deleted columns will
  2460.                   be erased,  and all  of  the columns  to the  right will  be
  2461.                   shifted  left to  fill  in the  deleted  columns.   Relative
  2462.                   references  in formulas  will  be  updated  by  the  change;
  2463.                   absolute  references will remain  unchanged.  Use  the arrow
  2464.                   keys to highlight the columns that should be deleted.
  2465.  
  2466.         ---------------------------------------------------------------------
  2467.         /Worksheet Del Row
  2468.         ---------------------------------------------------------------------
  2469.         Function  Delete one or more rows.
  2470.  
  2471.         Remarks   This command  deletes one or  more rows at the  current cell
  2472.                   pointer position.  The contents  of the deleted rows will be
  2473.                   erased, and all of the rows below will be shifted up to fill
  2474.                   in the deleted  rows.  Relative references  in formulas will
  2475.                   be  updated by the  change; absolute references  will remain
  2476.                   unchanged.   Use the arrow  keys to highlight the  rows that
  2477.                   should be deleted.
  2478.  
  2479.         ---------------------------------------------------------------------
  2480.         /Worksheet Title
  2481.         ---------------------------------------------------------------------
  2482.         Function  Lock title rows and columns on the screen.
  2483.  
  2484.         Remarks   This command allows  you to lock (or hold)  rows and columns
  2485.                   on screen.   The  command acts  as a  toggle; invoking  it a
  2486.                   first time  turns the  title locking ON,  and invoking  it a
  2487.                   second time turns the title locking OFF.  With title locking
  2488.                   ON, the rows  above the current cell and  the columns to the
  2489.                   left of the current cell will be locked on screen.  The cell
  2490.                   pointer  will  not  move  into  the  locked  title  rows and
  2491.                   columns.  
  2492.  
  2493.         ---------------------------------------------------------------------
  2494.         /Worksheet Protect
  2495.         ---------------------------------------------------------------------
  2496.         Function  Enable or disable cell protection.
  2497.  
  2498.         Remarks   This  command  enables  or disables  the  protection  in the
  2499.                   Worksheet.  When  the Worksheet protection is  disabled, any
  2500.                   cell in the Worksheet may be modified, regardless of whether
  2501.                   the cell is protected or not.  When the Worksheet protection
  2502.                   is enabled, those cells  which are protected using  the cell
  2503.                   or range protection commands may not be modified  or altered
  2504.                   in any way.
  2505.  
  2506.         Options   Enable    Turns Worksheet protection on.
  2507.                   Disable   Turns Worksheet protection off.
  2508.  
  2509.  
  2510.  
  2511.  
  2512.                                           33
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.         ---------------------------------------------------------------------
  2522.         /Worksheet Zero
  2523.         ---------------------------------------------------------------------
  2524.         Function  Suppress the display of zeros.
  2525.  
  2526.         Remarks   This command allows you to suppress the display of all cells
  2527.                   which have a value of zero.
  2528.  
  2529.         Options   No   Don't suppress the display of zeros.
  2530.                   Yes  Suppress the display of zeros.
  2531.  
  2532.  
  2533.         ---------------------------------------------------------------------
  2534.         /Worksheet Calc
  2535.         ---------------------------------------------------------------------
  2536.         Function  Select recalculation options.
  2537.  
  2538.         Remarks   This command allows  you to select whether  InstaCalc should
  2539.                   recalculate the Worksheet after any cell is changed, or only
  2540.                   when the <F9> Recalc key is pressed.
  2541.  
  2542.         Options   Auto      Recalculate  the  cells which  need  recalculation
  2543.                             after any cell is changed.
  2544.  
  2545.                   Manual    Only  recalculate  the  worksheet  when  the  <F9>
  2546.                             Recalc  key is pressed.   Since  the recalculation
  2547.                             state  of  the  worksheet   will  usually  not  be
  2548.                             current, InstaCalc will write the word CALC in the
  2549.                             upper  right corner when the worksheet needs to be
  2550.                             recalculated.
  2551.  
  2552.                   Limited   Allows  you to limit  recalculation to a  range of
  2553.                             cells.   You will be  asked to define a  range (or
  2554.                             range)  of  cells  which  should  be  recalculated
  2555.                             instead of the entire worksheet.
  2556.  
  2557.                   Full      Restores recalculation to the entire worksheet.
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.                                           34
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.         ---------------------------------------------------------------------
  2590.         /File Retrieve
  2591.         ---------------------------------------------------------------------
  2592.         Function  Retrieves a worksheet from disk.
  2593.  
  2594.         Remarks   This command  retrieves a file  from disk into memory.   You
  2595.                   will be asked for the name of  the file to retrieve.  If you
  2596.                   press the  <Enter> key  without a  file name, the  InstaCalc
  2597.                   file manager will  appear, from which you may  select a file
  2598.                   with the cursor keys.   When a file  is read in, all  of the
  2599.                   data,  settings, and current  face and pointer  position are
  2600.                   loaded.
  2601.  
  2602.                   All current data will be cleared from memory when a new file
  2603.                   is  loaded.   InstaCalc checks to  see if you  have made any
  2604.                   changes to the  current file,  and will ask  if you want  to
  2605.                   save your data before loading the new file.
  2606.  
  2607.                   If the file was saved  with a password (encrypted), then you
  2608.                   will be asked  to enter the password  to unlock it.   If you
  2609.                   provide the wrong password, an error message will appear and
  2610.                   the file will not be retrieved into memory.
  2611.  
  2612.  
  2613.  
  2614.         ---------------------------------------------------------------------
  2615.         /File Save
  2616.         ---------------------------------------------------------------------
  2617.         Function  Saves the worksheet in memory to disk.
  2618.  
  2619.         Remarks   This command asks you  for a name to save  the Worksheet as,
  2620.                   then  proceeds to  save  the  file to  disk  in the  current
  2621.                   directory.  Pressing the  <Enter> key  without  a file  name
  2622.                   brings up the InstaCalc File  Manager, from which a file may
  2623.                   be selected with the cursor keys.  In addition  to data, all
  2624.                   of the Worksheet settings are saved to disk.
  2625.  
  2626.                   If the file  name you provide already exists  in the current
  2627.                   directory,  InstaCalc will  ask  you  whether  you  want  to
  2628.                   overwrite the existing file, or  back it up.  If you  select
  2629.                   Backup, the extension  of the existing  file's name will  be
  2630.                   changed from .INS to .BAK, and the current file will receive
  2631.                   the .INS extension.
  2632.  
  2633.                   InstaCalc also allows you to password protect (encrypt) your
  2634.                   file as  it is saved to disk.  You  will be asked to enter a
  2635.                   password to lock the file with.  This allows you to generate
  2636.                   files  which others  cannot  access  unless  they  know  the
  2637.                   password.
  2638.  
  2639.                   To  password protect  a file,  you must  enter the  letter P
  2640.                   following the  file name.  For example,  if you want to save
  2641.                   the current  file to the  name SECRET.INS, and you  want the
  2642.                   file to be password protected, you should enter:
  2643.  
  2644.                   SECRET P
  2645.  
  2646.  
  2647.  
  2648.                                           35
  2649.  
  2650.  
  2651.  
  2652.  
  2653.  
  2654.  
  2655.  
  2656.  
  2657.                   when you are  asked to enter the  name of the file  to save.
  2658.                   You would then be asked to enter a password.  After you have
  2659.                   entered the  password, you  will be asked  to type  the same
  2660.                   password in to verify that it was typed in correctly.
  2661.  
  2662.                   IMPORTANT -  Make sure you  do not forget your  password for
  2663.                   the file.  There is no way to recover the file if you forget
  2664.                   your password.
  2665.  
  2666.  
  2667.         ---------------------------------------------------------------------
  2668.         /File Directory
  2669.         ---------------------------------------------------------------------
  2670.         Function  Changes the current directory.
  2671.  
  2672.         Remarks   This command allows  you to change the current  directory or
  2673.                   drive.  You may enter either a full DOS pathname or simply a
  2674.                   subdirectory name to  be appended to the  current directory.
  2675.                   Pressing the <Enter>  key without a file name  brings up the
  2676.                   InstaCalc  File Manager,  from  which  a  directory  may  be
  2677.                   selected with the cursor keys.
  2678.  
  2679.         ---------------------------------------------------------------------
  2680.         /File Files
  2681.         ---------------------------------------------------------------------
  2682.         Function  Brings up the InstaCalc File Manager.
  2683.  
  2684.         Remarks   This command presents a File Manager, and allows "point-and-
  2685.                   shoot" operations on files, directories, and drives.
  2686.  
  2687.                   You will be asked to  enter a mask.  A mask is  simply a way
  2688.                   of telling InstaCalc which  files you want to  be displayed.
  2689.                   You may use the asterisk *  in the mask.  The asterisk  will
  2690.                   match any set of characters.  For  example, if you enter the
  2691.                   mask *.BAK, then the file manager will list every file which
  2692.                   ends with .BAK.  If you enter the mask Q*.*, then all of the
  2693.                   files  beginning  with  the  letter  Q  will  be  displayed.
  2694.                   Pressing <Enter>  will use the Mask *.*,  which will display
  2695.                   all of the files in the current directory.
  2696.  
  2697.         Options   <Up> <Down>    Using these  keys, you  can highlight  files,
  2698.                                  drives,  or  directories (depending  on  what
  2699.                                  area of the file  manager the highlighted bar
  2700.                                  is  in).  Operations can then be performed on
  2701.                                  the selected file, drive, or directory.
  2702.  
  2703.                   <Left> <Right> Allows  you  to  change   files,  drives,  or
  2704.                                  directories.      If,    for   example,   the
  2705.                                  highlighted bar is in the "Directory" section
  2706.                                  of the file manager, and you wanted to change
  2707.                                  drives,  hitting the left arrow key will move
  2708.                                  the  bar into  the "Drive"  section.   A  new
  2709.                                  drive may be selected by using the down arrow
  2710.                                  and Enter keys.
  2711.  
  2712.                   <Enter>        Causes  the   highlighted  file,   drive,  or
  2713.                                  directory  to be selected.
  2714.  
  2715.  
  2716.                                           36
  2717.  
  2718.  
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.  
  2725.                   <F1>           Causes a  Help screen to appear,  giving help
  2726.                                  on how to use the File Manager.
  2727.  
  2728.                   <F2>           Causes the  currently highlighted file  to be
  2729.                                  loaded.
  2730.  
  2731.                   <F3>           Causes the  highlighted file to  be combined.
  2732.                                  For more details see /File Combine.
  2733.  
  2734.                   <F4>           Causes the  highlighted file to  be imported.
  2735.                                  For more details see /File Import.
  2736.  
  2737.                   <F5>           Allows  you  to  edit  the  contents  of  the
  2738.                                  highlighted text  file.   Although the  macro
  2739.                                  editor will be  used, you are not  limited to
  2740.                                  editing  just macro (.MAC) files.  See /Macro
  2741.                                  Edit  for  details on  the  options available
  2742.                                  when editing.
  2743.  
  2744.                   <F6>           Causes  the  highlighted  text   file  to  be
  2745.                                  printed.   This  function  is  primarily  for
  2746.                                  printing out application programs.
  2747.  
  2748.                   <F7>           Causes  the highlighted file to run, if it is
  2749.                                  a program or batch file, and if enough memory
  2750.                                  is available.
  2751.  
  2752.                   <F8>           Allows  you to  rename the  highlighted file.
  2753.                                  You will be prompted for a new name.
  2754.  
  2755.                   <F9>           Copies the highlighted file to another drive,
  2756.                                  directory, or name.  You will be prompted for
  2757.                                  a new drive, directory, or name.
  2758.  
  2759.                   <F10>          Deletes the highlighted file.  InstaCalc will
  2760.                                  request confirmation before actually deleting
  2761.                                  the file.
  2762.  
  2763.                   <Ctrl><F2>     Scans  the   current  drive  to   update  the
  2764.                                  directory tree.
  2765.  
  2766.                   The  File  Manager  also simplifies  the  tasks  of changing
  2767.                   drives and  directories.   To change  to another  directory,
  2768.                   simply   press  the  <Left>   key  to  highlight   the  word
  2769.                   DIRECTORIES at the top of the screen,  then use the <Up> and
  2770.                   <Down> keys to highlight the  name of the directory you want
  2771.                   to  change to.   Once  the  name is  highlighted, press  the
  2772.                   <Enter> key  and InstaCalc will change to that directory and
  2773.                   list the files in that directory.
  2774.  
  2775.                   Changing drives  is just as  easy.  Simply press  the <Left>
  2776.                   key  until the  word DRV is  highlighted at  the top  of the
  2777.                   screen,  then press  the letter  of  the drive  you want  to
  2778.                   change to.   For example, if you want to change to drive A:,
  2779.                   then just press A.
  2780.  
  2781.  
  2782.  
  2783.  
  2784.                                           37
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.         ---------------------------------------------------------------------
  2794.         /File Combine
  2795.         ---------------------------------------------------------------------
  2796.         Function  Combines  all  or part  of  a  worksheet  on disk  with  the
  2797.                   worksheet currently in memory.
  2798.  
  2799.         Remarks   This command allows  you to combine several  InstaCalc files
  2800.                   into  a single file.  You will be  asked for the name of the
  2801.                   file  to be  read in,  and the file  will be  loaded without
  2802.                   clearing the Worksheet.  Pressing the <Enter>  key without a
  2803.                   file name brings up the InstaCalc File Manager, from which a
  2804.                   file may  be selected  with the cursor  keys.   The original
  2805.                   cells will  remain unchanged  unless the  new file  contains
  2806.                   data in the  same cells.  Blank  cells in the new  file will
  2807.                   not  affect  existing  cells  in  the  Worksheet.    Current
  2808.                   Worksheet settings will be retained.
  2809.  
  2810.         Options   Copy      The data in the new file will be combined into the
  2811.                             current  Worksheet.   If  the  new  file  and  the
  2812.                             current  Worksheet contain  any data  in the  same
  2813.                             cell, the data in the new file will be copied over
  2814.                             the data already in memory.
  2815.  
  2816.                   Add       The data in the new file will be combined into the
  2817.                             current  Worksheet.   If  the  new  file  and  the
  2818.                             current Worksheet contain values in the same cell,
  2819.                             the value  in the  new file will  be added  to the
  2820.                             value  already in memory.   Since this  command is
  2821.                             primarily  for  consolidating  data  from  several
  2822.                             worksheets, cells  containing  text  will  not  be
  2823.                             combined into the current file.
  2824.  
  2825.                   Subtract  The data in the new file will be combined into the
  2826.                             current  Worksheet.   If  the  new  file  and  the
  2827.                             current Worksheet contain values in the same cell,
  2828.                             the value in the new  file will be subtracted from
  2829.                             the value already  in memory.  Since  this command
  2830.                             is primarily for  consolidating data from  several
  2831.                             worksheets, cells  containing  text  will  not  be
  2832.                             combined into the current file.
  2833.  
  2834.                   Each of these options has two suboptions which determine how
  2835.                   much of the new file should be combined in.
  2836.  
  2837.                   All  Combines in  the entire  file.  Every  cell in  the new
  2838.                        file  will be combined  into the  same location  in the
  2839.                        current  Worksheet.    For example,  cell  X23  will be
  2840.                        combined into cell X23 in the current worksheet.
  2841.  
  2842.                   Part Combines in  a range from the  file.  The cells  in the
  2843.                        range  you combine in will be  combined starting at the
  2844.                        location of the cell pointer.  For example, if the cell
  2845.                        pointer is  in cell  D5, and you  combine in  the range
  2846.                        A1..D12 from  the other file,  then cell A1 in  the new
  2847.                        file will  be  combined into  cell  D5 in  the  current
  2848.                        worksheet.
  2849.  
  2850.  
  2851.  
  2852.                                           38
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.  
  2861.                        You will be asked for the range in the other file which
  2862.                        you want to combine in.
  2863.  
  2864.                        If the  range you want to combine in was named with the
  2865.                        /Range Name command, you  can press the <F3>  Range key
  2866.                        to bring up a menu of all the named ranges in the other
  2867.                        file.
  2868.  
  2869.  
  2870.  
  2871.         ---------------------------------------------------------------------
  2872.         /File Xtract
  2873.         ---------------------------------------------------------------------
  2874.         Function  Saves part of the worksheet in memory to disk.
  2875.  
  2876.         Remarks   This  command is similar  to the /File  Save command, except
  2877.                   that  it saves  a  range  of cells  rather  than the  entire
  2878.                   Worksheet.  You  will be asked for  the name of the  file to
  2879.                   save  to,  and  to  define  the  range  of  cells  to  save.
  2880.                   InstaCalc saves all of the Worksheet settings with the saved
  2881.                   range.
  2882.  
  2883.  
  2884.         ---------------------------------------------------------------------
  2885.         /File Import
  2886.         ---------------------------------------------------------------------
  2887.         Function  Imports data from 1-2-3, dBase, DIF, or ASCII files.
  2888.  
  2889.         Remarks   This command  imports data  files from  other programs  into
  2890.                   InstaCalc.  You  will be asked for  the name of the  file to
  2891.                   import.  Pressing <Enter> without  a file name brings up the
  2892.                   InstaCalc File Manager,  from which a  file may be  selected
  2893.                   with the cursor keys.
  2894.  
  2895.         Options   1-2-3     Imports a  Lotus 1-2-3  (tm) file.   If  InstaCalc
  2896.                             encounters  a formula  which  uses an  unsupported
  2897.                             @function, it will  read the value of  the formula
  2898.                             rather than the formula itself.
  2899.  
  2900.                   dBase     Imports  selected records from  a dBase (tm) file.
  2901.                             Fields will  appear as  columns, and  records will
  2902.                             appear as rows.   You do not have  to import every
  2903.                             field of the data base.  Before the import begins,
  2904.                             InstaCalc  will  step through  the  names of  each
  2905.                             field and  ask if you  want to import  that field.
  2906.                             You may select:
  2907.  
  2908.                             Yes  Import this field.
  2909.                             No   Don't import this field.
  2910.                             All  Import this and all the remaining fields.
  2911.  
  2912.                             You will then  be asked to enter a  criteria.  The
  2913.                             criteria is a string  which tells InstaCalc  which
  2914.                             records you want  to import.  The  criteria can be
  2915.                             any valid  InstaCalc formula which returns  a TRUE
  2916.                             or FALSE value.  The criteria may treat any of the
  2917.                             dBase field names as  if they were range names  in
  2918.  
  2919.  
  2920.                                           39
  2921.  
  2922.  
  2923.  
  2924.  
  2925.  
  2926.  
  2927.  
  2928.  
  2929.                             the formula.    The criteria  can use  any of  the
  2930.                             comparison  operators  (=,<>,<=, etc)  or  logical
  2931.                             operators (&,|, or ~).
  2932.  
  2933.                             If you press <Enter> without entering  a criteria,
  2934.                             then InstaCalc  will import every record  from the
  2935.                             dBase  file (if  there is  enough  memory to  hold
  2936.                             them).
  2937.  
  2938.                             Some example criteria are:
  2939.  
  2940.                             STATE="Utah"
  2941.                             All records where the STATE field contains Utah
  2942.  
  2943.                             (STATE="Utah")&(LASTNAME="Smith")
  2944.                             All  records where  the STATE field  contains Utah
  2945.                             and the LASTNAME field contains Smith
  2946.  
  2947.                             (STATE="Utah")&~(LASTNAME="Smith")
  2948.                             All records  where the  STATE field  contains Utah
  2949.                             but the LASTNAME field does not contain Smith
  2950.  
  2951.                             (STATE="Utah")|(STATE="California")
  2952.                             All records where the STATE field contains Utah or
  2953.                             California
  2954.  
  2955.                             QUANTITY>100
  2956.                             All records  where the QUANTITY  field contains  a
  2957.                             value greater than 100
  2958.  
  2959.                             At any time  while entering the criteria,  you may
  2960.                             press <F3> to  bring up a menu of  the field names
  2961.                             which are available.
  2962.  
  2963.                             The  only limitation to  the criteria is  that you
  2964.                             may only  use the  names of  fields which  you are
  2965.                             actually importing.  For example, if you select No
  2966.                             when asked if  InstaCalc should  import the  field
  2967.                             called STATE, then you  may not use STATE in  your
  2968.                             criteria.
  2969.  
  2970.                   DIF       Imports a  Data  Interchange  Format  (DIF)  file.
  2971.                             Many  databases and  spreadsheets  are capable  of
  2972.                             creating DIF files.
  2973.  
  2974.                   ASCII     Imports a comma delimited or space delimited ASCII
  2975.                             file.    Each  line  in  the  ASCII  file  will be
  2976.                             imported into a row  in the worksheet.  Each  line
  2977.                             may contain multiple fields (cells) of data,  each
  2978.                             of which must  be separated by  a comma or  space.
  2979.                             If a string which contains spaces or commas  is to
  2980.                             be imported into  a single cell, then  that string
  2981.                             must be surrounded by quotation marks "like this".
  2982.  
  2983.  
  2984.  
  2985.  
  2986.  
  2987.  
  2988.                                           40
  2989.  
  2990.  
  2991.  
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.         ---------------------------------------------------------------------
  2998.         /File Export
  2999.         ---------------------------------------------------------------------
  3000.         Function  Exports part  of the  worksheet to a  1-2-3, dBase,  DIF, or
  3001.                   ASCII file.
  3002.  
  3003.         Remarks   This command exports a range of cells to  the file format of
  3004.                   another program.   You will be  asked for the file  name you
  3005.                   want to export to, and to define the range of cells you want
  3006.                   to export.   If the file name you  provide exists, InstaCalc
  3007.                   will ask you  if you want to Overwrite the  existing file or
  3008.                   Cancel the operation.
  3009.  
  3010.         Options   1-2-3     This option allows you to export the range to a 1-
  3011.                             2-3 R1  (WKS) or R2  (WK1) file.  You  must select
  3012.                             from a menu  which version you want to  export to.
  3013.                             Any InstaCalc formula which  contains an @function
  3014.                             which  1-2-3 doesn't support will be exported as a
  3015.                             value rather than a formula.
  3016.  
  3017.                   dBase     This option  allows you to  export the range  to a
  3018.                             dBase II, III, or III+ file.  You must select from
  3019.                             a menu which version you want to export to.
  3020.  
  3021.                             InstaCalc  will use the  top row of  the range you
  3022.                             define  as  the field  names  for the  data  to be
  3023.                             exported.  The widths of  each column will be used
  3024.                             as the field width in the dBase file.
  3025.  
  3026.                             Before the  actual export is  performed, InstaCalc
  3027.                             will step through each field name and ask you what
  3028.                             type of field it  should be.  The  available field
  3029.                             types are:
  3030.  
  3031.                             Character The values in the field are text.
  3032.  
  3033.                             Number    The values in the field are numbers.
  3034.  
  3035.                             Logical   The  values  in  the field  are  TRUE or
  3036.                                       FALSE.
  3037.  
  3038.                             Date      The values in the field are dates.  This
  3039.                                       option is available only when you export
  3040.                                       to dBase III or III+.
  3041.  
  3042.                   DIF       The  file  will  be  exported  in  the  DIF  (Data
  3043.                             Interchange Format) format.
  3044.  
  3045.                   ASCII     The file  will be  exported to  a comma  delimited
  3046.                             ASCII file.   Each row of  the range will be  on a
  3047.                             separate line of the ASCII file, and the  value of
  3048.                             each cell in the row will be separated by a comma.
  3049.                             Text items will be surrounded by quotes ".
  3050.  
  3051.  
  3052.  
  3053.  
  3054.  
  3055.  
  3056.                                           41
  3057.  
  3058.  
  3059.  
  3060.  
  3061.  
  3062.  
  3063.  
  3064.  
  3065.         ---------------------------------------------------------------------
  3066.         /File Link
  3067.         ---------------------------------------------------------------------
  3068.         Function  Link to a .INS file on disk.
  3069.  
  3070.         Remarks   This  command  allows  you  to  link  multiple  spreadsheets
  3071.                   together.   You are  not limited to  linking a  single cell.
  3072.                   You may link to an entire range within another spreadsheet.
  3073.  
  3074.                   The current cell will contain the  link.  If you change  the
  3075.                   value of the cell in the other spreadsheet, this "link cell"
  3076.                   will change accordingly.
  3077.  
  3078.                   If you create  a link to a  range of cells in  another file,
  3079.                   the link cell will take on the same value as the cell in the
  3080.                   upper left corner of the range in the other file.  The cells
  3081.                   to the right  of and below  the link cell  will take on  the
  3082.                   values of corresponding cells from the other file.
  3083.  
  3084.                   If a change is made to any  of the linked cells in the other
  3085.                   worksheet,  the current worksheet will be updated to reflect
  3086.                   those changes.
  3087.  
  3088.                   Each  time you  retrieve a  file  which is  linked to  other
  3089.                   files, you will  be asked if you  want to update all  of the
  3090.                   links.  If  you select Yes then InstaCalc  will update every
  3091.                   link in the  file.  If you select No then InstaCalc will not
  3092.                   update any of the links in the file.
  3093.  
  3094.                   If none of the files which were linked to have been changed,
  3095.                   then selecting No can greatly  speed up the retrieval of the
  3096.                   file.
  3097.  
  3098.                   If your file has a large number of links in it, but only one
  3099.                   of the links needs to be updated, you should  select No, and
  3100.                   then use the /File Link  Update command to update the single
  3101.                   link.
  3102.  
  3103.         Options   Create    Create or edit a  link to another worksheet.   You
  3104.                             will be asked for two items.
  3105.  
  3106.                             - The name of the file  you want to link to.   The
  3107.                             file must already be in existence.
  3108.  
  3109.                             - The name of the range you want to link to.
  3110.  
  3111.                   Delete    Delete an existing  link to another worksheet.   A
  3112.                             menu  of all existing  links will appear,  and you
  3113.                             may pick the link you want to delete.
  3114.  
  3115.                   List      List all of the links in the current Worksheet.
  3116.  
  3117.                   Edit      Allows you  to edit  an existing  link to  another
  3118.                             file.  A menu of all the links in the file will be
  3119.                             displayed,  from which you may select the link you
  3120.                             want to edit.  You may then change either the file
  3121.                             to link to, or the range in the file, or both.
  3122.  
  3123.  
  3124.                                           42
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.                   Update    Allows you  to update a  link to another file.   A
  3134.                             menu  of  all  the  links  in  the  file  will  be
  3135.                             displayed, and you may select the link you wish to
  3136.                             be updated.
  3137.  
  3138.  
  3139.  
  3140.         ---------------------------------------------------------------------
  3141.         /Print Block
  3142.         ---------------------------------------------------------------------
  3143.         Function  Defines the range of cells to print.
  3144.  
  3145.         Remarks   This command  allows you to  define a range  to print.   You
  3146.                   will be asked to define the range  to be printed.  The range
  3147.                   will not actually be printed  until the /Print Go command is
  3148.                   issued.
  3149.  
  3150.  
  3151.  
  3152.         ---------------------------------------------------------------------
  3153.         /Print Rows
  3154.         ---------------------------------------------------------------------
  3155.         Function  Defines rows to print above the print range on each page.
  3156.  
  3157.         Remarks   This command  allows you  to define one  or more  rows which
  3158.                   will be  printed above your data on each page.  This command
  3159.                   is useful when you  are printing a range which has more rows
  3160.                   than will  fit on a single sheet of  paper; it allows you to
  3161.                   have a row of header data printed at the top of each page.
  3162.  
  3163.  
  3164.         ---------------------------------------------------------------------
  3165.         /Print Columns
  3166.         ---------------------------------------------------------------------
  3167.         Function  Defines  columns to print to the  left of the print range on
  3168.                   each page.
  3169.  
  3170.         Remarks   This command allows you to  define one or more columns which
  3171.                   will be printed to the left of your data on each page.  This
  3172.                   command is  useful when you  are printing a range  which has
  3173.                   more columns than  will fit on  a single sheet of  paper; it
  3174.                   allows you to have a column of titles printed at the left of
  3175.                   each page.
  3176.  
  3177.  
  3178.  
  3179.         ---------------------------------------------------------------------
  3180.         /Print Undefine
  3181.         ---------------------------------------------------------------------
  3182.         Function  Undefines the current Print, Rows, and Columns ranges.
  3183.  
  3184.         Remarks   Since InstaCalc remembers  which range you printed  last, it
  3185.                   is  sometimes necessary to  reset the /Print  Block setting.
  3186.                   When doing so,  it is usually easiest to  clear the previous
  3187.                   block setting entirely by using the /Print Undefine command.
  3188.  
  3189.         Options   Block     Clears the previous /Print Block setting.
  3190.  
  3191.  
  3192.                                           43
  3193.  
  3194.  
  3195.  
  3196.  
  3197.  
  3198.  
  3199.  
  3200.  
  3201.                   Rows      Clears the previous /Print Rows setting.
  3202.  
  3203.                   Columns   Clears the previous /Print Columns setting.
  3204.  
  3205.                   All       Clears all previous /Print range settings.
  3206.  
  3207.  
  3208.         ---------------------------------------------------------------------
  3209.         /Print Align
  3210.         ---------------------------------------------------------------------
  3211.         Function  Align the paper in the printer.
  3212.  
  3213.         Remarks   This command sets  the current position of  the printhead as
  3214.                   the top of the page.  This is important; the printer and the
  3215.                   program will be  keeping individual track of the  top of the
  3216.                   page.  It  is good  habit to precede  the /Print Go  command
  3217.                   with the /Print Align command.
  3218.  
  3219.  
  3220.         ---------------------------------------------------------------------
  3221.         /Print Line
  3222.         ---------------------------------------------------------------------
  3223.         Function  Advance the printer by one line.
  3224.  
  3225.         Remarks   This command sends  a line feed to the  printer, causing the
  3226.                   printer to  print a blank line.   Since the  printer and the
  3227.                   program  are  keeping  separate  track  of  the  pagination,
  3228.                   sending a line feed through  the printer control panel  will
  3229.                   cause  the  program's  pagination  to  be  off  by  a  line,
  3230.                   resulting  in unwanted  offsets  in  your  printout.    More
  3231.                   importantly, though,  it is  usually easier  to advance  the
  3232.                   paper  one  line  using  this  command  than  by  using  the
  3233.                   printer's control panel.
  3234.  
  3235.  
  3236.  
  3237.         ---------------------------------------------------------------------
  3238.         /Print Page
  3239.         ---------------------------------------------------------------------
  3240.         Function  Advance the printer to the top of the next page.
  3241.  
  3242.         Remarks   This command sends  a form feed to the  printer, causing the
  3243.                   paper to advance one page.  This is usually done at  the end
  3244.                   of a printout,  since printing will stop with  the last line
  3245.                   actually  printed.    Thus,  to remove  the  page  from  the
  3246.                   printer, simply select the /Print  Page command.  Since  the
  3247.                   printer and the  program are keeping  separate track of  the
  3248.                   pagination,  sending a form feed through the printer control
  3249.                   panel  will  cause  the  program's  pagination  to  be  off,
  3250.                   resulting in unwanted offsets in your printout.
  3251.  
  3252.  
  3253.  
  3254.  
  3255.  
  3256.  
  3257.  
  3258.  
  3259.  
  3260.                                           44
  3261.  
  3262.  
  3263.  
  3264.  
  3265.  
  3266.  
  3267.  
  3268.  
  3269.         ---------------------------------------------------------------------
  3270.         /Print Options
  3271.         ---------------------------------------------------------------------
  3272.         Function  Set options for your printout.
  3273.  
  3274.         Remarks   This command allows complete control over the format  of the
  3275.                   printout.   There are  numerous options, all  visible from a
  3276.                   single pop-up  screen.  You  may select an option  either by
  3277.                   pressing  the first letter of the option name (highlighted),
  3278.                   or  by using  the arrow  keys  to highlight  the option  and
  3279.                   pressing the <Enter> key.
  3280.  
  3281.         Options   Left Margin    Lets you  set the  number of  characters from
  3282.                                  left edge of the page to begin printing.
  3283.  
  3284.                   Right Margin   Lets  you set  the number of  characters from
  3285.                                  left  edge of  the page  that  you want  your
  3286.                                  right margin set  to.  The right  margin must
  3287.                                  be greater than  the left margin or  an error
  3288.                                  will occur.
  3289.  
  3290.                   Top Margin     Lets you  set the  number of  blank lines  to
  3291.                                  print at  the top of  each page.  If  you set
  3292.                                  this  option  to  3,  InstaCalc  will   begin
  3293.                                  printing on the fourth line of the page.
  3294.  
  3295.                   Bottom Margin  Lets you  set the  number of  blank lines  to
  3296.                                  print  at the bottom of each page.  InstaCalc
  3297.                                  will automatically advance  the paper to  the
  3298.                                  next page before it resumes printing.
  3299.  
  3300.                   Page Length    Lets  you set the number of physical lines on
  3301.                                  a page.   On an 8 1/2" x 11" paper at 6 lines
  3302.                                  per inch, there are 66 lines.  InstaCalc must
  3303.                                  have  this information  so  that it  can keep
  3304.                                  track of where it is on the page.
  3305.  
  3306.                   Header         Allows  you  to enter  a  header,  which will
  3307.                                  appear at the top  of every page.  There  are
  3308.                                  two  special characters that  you can  use in
  3309.                                  headers:
  3310.  
  3311.                                  @    will be replaced by the current date.
  3312.                                  #    will  be  replaced by  the  current page
  3313.                                       number.
  3314.  
  3315.                                  The header  may start  with one  of the  text
  3316.                                  justify characters to determine where on  the
  3317.                                  line  the  header  will  be  placed.    These
  3318.                                  characters are
  3319.  
  3320.                                  '    left justify the header
  3321.                                  "    right justify the header
  3322.                                  ^    center the header
  3323.  
  3324.                                  If  no header is  defined, then a  blank line
  3325.                                  will be printed in its place.
  3326.  
  3327.  
  3328.                                           45
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.  
  3337.                   Footer         Allows  you to  enter  a  footer, which  will
  3338.                                  appear  at the bottom of every page.  Special
  3339.                                  characters are  available as  in the  header.
  3340.                                  If  no footer is  defined, then a  blank line
  3341.                                  will be printed in its place.
  3342.  
  3343.                   Mode           Lets  you decide  what  type of  printout you
  3344.                                  want.
  3345.  
  3346.                                  Display   The  printout  will appear  as  the
  3347.                                            file does  on-screen; that  is, the
  3348.                                            values calculated  by the  formulas
  3349.                                            will be printed.
  3350.  
  3351.                                  Formula   The  formulas  themselves  will  be
  3352.                                            printed, one  cell per line.   This
  3353.                                            is  useful  for  documentation  and
  3354.                                            error-handling.
  3355.  
  3356.                   Output         Lets you decide where to send your output.
  3357.  
  3358.                                  Printer   All  output  will  be sent  to  the
  3359.                                            printer.
  3360.  
  3361.                                  File      All output  will be sent to a file.
  3362.                                            You  will be asked  for the name of
  3363.                                            the  file  you  want  to  send  the
  3364.                                            printout to.
  3365.  
  3366.                   Number (page)  Displays the  current page number,  which you
  3367.                                  can set or reset.
  3368.  
  3369.                   Device         Allows  you to select the printer and port to
  3370.                                  send the printout to.
  3371.  
  3372.                   Setup string   The setup string is  a sequence of characters
  3373.                                  which will be sent to your printer before the
  3374.                                  range  is printed.   It is generally  used to
  3375.                                  send  control sequences  to  your printer  to
  3376.                                  turn  on special  features such  as condensed
  3377.                                  printing.  Most printer codes contain control
  3378.                                  characters which  can't be  entered directly.
  3379.                                  To enter  control characters, simply  enter a
  3380.                                  backslash character \ followed by the 3 digit
  3381.                                  ASCII  code  (in  decimal)  for  the  control
  3382.                                  character.
  3383.  
  3384.                                  For  example,  since  the  ASCII  value   (in
  3385.                                  decimal) for  the <Esc> character  is 27, you
  3386.                                  would use a setup string of  \027E to send an
  3387.                                  <Esc>E to the printer (this sequence  selects
  3388.                                  emphasized print on an EPSON printer).
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.                                           46
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.         ---------------------------------------------------------------------
  3406.         /Print Go
  3407.         ---------------------------------------------------------------------
  3408.         Function  Send your data to the printer (or print file).
  3409.  
  3410.         Remarks   This command begins the process of printing.  InstaCalc will
  3411.                   not begin printing until it receives this command.
  3412.  
  3413.                   If the range  you are trying to print is wider than the left
  3414.                   and right margins  allow, InstaCalc will ask if  you want if
  3415.                   to break the  page into smaller pieces for  printing.  These
  3416.                   pieces can then be put back together into a larger sheet.
  3417.  
  3418.                   If you  don't want  the printout to  be broken  into smaller
  3419.                   pieces, then  you must go  back into the /Print  Options and
  3420.                   reset  your left  and right  margins  to allow  for a  wider
  3421.                   printout.
  3422.  
  3423.                   If you want  to abort the  print job after  it has  started,
  3424.                   simply press  the <Esc>  key (printers  with built-in  print
  3425.                   buffers will  continue to print  until the print  buffer has
  3426.                   been emptied).
  3427.  
  3428.  
  3429.  
  3430.         ---------------------------------------------------------------------
  3431.         /Graph
  3432.         ---------------------------------------------------------------------
  3433.         Function  Define, view, and print graphs.
  3434.  
  3435.         Remarks   This command allows you to  define the ranges to be graphed,
  3436.                   set options for the graph, and then view or print the graph.
  3437.  
  3438.         Options   Type      Select  the type of graph.  The following types of
  3439.                             graphs are available.
  3440.  
  3441.                             Bar            Bar chart.
  3442.                             Stacked Bar    Stacked bar chart.
  3443.                             Line           Line chart.
  3444.                             Pie            Pie chart using data in range A.
  3445.                             X-Y            X-Y chart.   Range  X must  contain
  3446.                                            the  X  axis  coordinates  for  the
  3447.                                            values in ranges A through F.
  3448.                             Area           Area chart.
  3449.                             Hi-Lo          Hi-Lo chart.  Range A contains  the
  3450.                                            high values,  and range  B contains
  3451.                                            the low values.
  3452.  
  3453.                   A..F      Allows you  to select  up to 6  ranges of  data to
  3454.                             graph.  With the exception of pie charts and hi-lo
  3455.                             graphs, all of these ranges can be displayed  on a
  3456.                             graph at the same time.
  3457.  
  3458.                             Simply define  the range of  cells you want  to be
  3459.                             graphed.  You will also be asked to enter a legend
  3460.                             which  describes  the  data in  the  range.   This
  3461.                             legend   will  be   printed   on   the  graph   to
  3462.  
  3463.  
  3464.                                           47
  3465.  
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.  
  3472.  
  3473.                             differentiate between the different graph ranges.
  3474.  
  3475.                   X Axis    Allows you to  select a range of  cells containing
  3476.                             the labels which will be used on a graph's X axis.
  3477.                             You  will be prompted for the range containing the
  3478.                             labels.   For most graph  types the cells  in this
  3479.                             range  may contain text, values, or both.  For X-Y
  3480.                             graphs,  this range must contain the x axis values
  3481.                             which  correspond to  the graph ranges  (A through
  3482.                             F).   Defining  this range  is  mandatory for  X-Y
  3483.                             graphs.
  3484.  
  3485.                   Reset     Resets  the ranges of  the graph, allowing  you to
  3486.                             undefine data ranges to be charted.
  3487.  
  3488.                   View      Displays the defined  graph on your screen.   Once
  3489.                             the  graph  is displayed,  pressing  any  key will
  3490.                             return you to the worksheet.
  3491.  
  3492.                   Print     Prints  the defined  graph to  the  printer.   The
  3493.                             current printer type and port is displayed next to
  3494.                             the print  command.   To change  this printer  (or
  3495.                             port), use the /Print Options Device command.
  3496.  
  3497.                   Options   Allows you to set various options for the graph.
  3498.  
  3499.                             Title     Places a title at the top of the current
  3500.                                       graph.   You will be asked to enter some
  3501.                                       text.
  3502.  
  3503.                             Labels    Allows you to label the  X and Y axes of
  3504.                                       the graph.  The X  label will be  placed
  3505.                                       horizontally under the x axis, and the Y
  3506.                                       label will  be placed vertically  to the
  3507.                                       left  of the y axis.   You will be asked
  3508.                                       to enter some text for  both the X and Y
  3509.                                       axis labels.
  3510.  
  3511.  
  3512.                             X axis    Allows  you  to  select the  format  and
  3513.                                       scaling of the  x axis.  This  option is
  3514.                                       useful only for X-Y graphs.  There are 2
  3515.                                       types of scaling.
  3516.  
  3517.                                       Auto      InstaCalc   will  select   the
  3518.                                                 minimum and maximum  values to
  3519.                                                 use for the x axis.
  3520.  
  3521.                                       Manual    InstaCalc will ask you for the
  3522.                                                 minimum and maximum  values to
  3523.                                                 use for the x axis.  InstaCalc
  3524.                                                 may  adjust  these   values  a
  3525.                                                 little   bit   if   necessary.
  3526.                                                 Manual scaling is  useful when
  3527.                                                 you  want  to   print  several
  3528.                                                 different  graphs  using   the
  3529.                                                 same scale.
  3530.  
  3531.  
  3532.                                           48
  3533.  
  3534.  
  3535.  
  3536.  
  3537.  
  3538.  
  3539.  
  3540.  
  3541.                                       You  will also  be asked  to select  the
  3542.                                       format to  use to  display values  along
  3543.                                       the  x  axis.    All of  the  formatting
  3544.                                       options  from the  /Cell Format  command
  3545.                                       (such  as  fixed,  currency, scientific,
  3546.                                       etc) are available.
  3547.  
  3548.                             Y axis    Allows  you  to  select  the format  and
  3549.                                       scaling of the  y axis.  This  option is
  3550.                                       used  for  all  graph types  except  pie
  3551.                                       charts.  There are 2 types of scaling.
  3552.  
  3553.                                       Auto      InstaCalc   will  select   the
  3554.                                                 minimum and maximum  values to
  3555.                                                 use for the y axis.
  3556.  
  3557.                                       Manual    InstaCalc will ask you for the
  3558.                                                 minimum and maximum  values to
  3559.                                                 use for the y axis.  InstaCalc
  3560.                                                 may  adjust  these   values  a
  3561.                                                 little   bit   if   necessary.
  3562.                                                 Manual scaling is  useful when
  3563.                                                 you  want  to   print  several
  3564.                                                 different  graphs   using  the
  3565.                                                 same scale.
  3566.  
  3567.                                  You will also  be asked to select  the format
  3568.                                  to  use to display  values along the  y axis.
  3569.                                  All of the formatting  options from the /Cell
  3570.                                  Format  command  (such  as  fixed,  currency,
  3571.                                  scientific, etc) are available.
  3572.  
  3573.                        Spacing   Allows  you  to  choose  the  spacing of  the
  3574.                                  values along the  x axis of the graph.   This
  3575.                                  option is useful when graph range X  contains
  3576.                                  a large number  of values to place  along the
  3577.                                  axis.  You will be asked to enter a numerical
  3578.                                  value.  If you enter 1, then every value from
  3579.                                  graph  range X  will be  displayed.   If  you
  3580.                                  enter  2, then every  second value from graph
  3581.                                  range X will be displayed; 3 means that every
  3582.                                  third value will be displayed, and so on.
  3583.  
  3584.                                  For  example, if the  x axis values  are Jan,
  3585.                                  Feb, Mar, April, and May,  choosing a spacing
  3586.                                  of 1  causes each  of the  values to  appear.
  3587.                                  Choosing  2 will cause only Jan, Mar, and May
  3588.                                  to appear.
  3589.  
  3590.                        PieFormat Allows you to select how to format the values
  3591.                                  displayed  around the  pie  chart.   Although
  3592.                                  each  slice of the  pie will be  labeled with
  3593.                                  the  contents of the  X graph range,  you may
  3594.                                  also display a value for  the slice.  You may
  3595.                                  select from the following options.
  3596.  
  3597.                                  %         The percent  of the  whole will  be
  3598.  
  3599.  
  3600.                                           49
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.                                            displayed.    For example,  if  the
  3610.                                            slice is  one quarter  of the  pie,
  3611.                                            25% will be displayed.
  3612.  
  3613.                                  $         The value of the  slice (from graph
  3614.                                            range  A) will  be  displayed as  a
  3615.                                            currency value.
  3616.  
  3617.                                  Value     The actual value of the slice (from
  3618.                                            graph range A) will be displayed.
  3619.  
  3620.                                  None      No value will be displayed.
  3621.  
  3622.                        AltTic    Determines  whether the  values placed  along
  3623.                                  the  x axis should be staggered.  This allows
  3624.                                  a  few more  values (or  longer  ones) to  be
  3625.                                  placed  along the x axis and yet still remain
  3626.                                  readable.
  3627.  
  3628.                                  Yes  Stagger the x axis values.
  3629.  
  3630.                                  No   Don't stagger the x axis values.
  3631.  
  3632.  
  3633.  
  3634.  
  3635.  
  3636.  
  3637.  
  3638.  
  3639.  
  3640.  
  3641.  
  3642.  
  3643.  
  3644.  
  3645.  
  3646.  
  3647.  
  3648.  
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.                                           50
  3669.  
  3670.  
  3671.  
  3672.  
  3673.  
  3674.  
  3675.  
  3676.  
  3677.         ---------------------------------------------------------------------
  3678.         /Data Sort
  3679.         ---------------------------------------------------------------------
  3680.         Function  Sort a range of data.
  3681.  
  3682.         Remarks   This command allows you to sort  rows or columns of data, in
  3683.                   either ascending or  descending order.  A window  of options
  3684.                   will  appear on  the screen.   To  change an  option, either
  3685.                   press  the key  corresponding  to the  first  letter of  the
  3686.                   option name (D for Direction for example), or use the cursor
  3687.                   keys to move  the lightbar to the option you  want to change
  3688.                   and press the <Enter> key.
  3689.  
  3690.         Options   Direction      Determines how your data is to be sorted.
  3691.                                  Row       Rows will be sorted.
  3692.                                  Column    Columns will be sorted.
  3693.  
  3694.                   Block          You  will be  asked to  define  the range  to
  3695.                                  sort.  This  range should include all  of the
  3696.                                  rows or columns which you want rearranged.
  3697.  
  3698.                   1st - 9th Key  The  Key options  indicate the  fields to  be
  3699.                                  used in determining the sorted (new) order of
  3700.                                  the data.   You will be prompted  to indicate
  3701.                                  the column or  row that contains the  data by
  3702.                                  which  the  sort  is to  be  performed.   The
  3703.                                  column  or row  may  be  indicated either  by
  3704.                                  pointing  or by  typing  an appropriate  cell
  3705.                                  address.
  3706.  
  3707.                                  You  will  also  be  asked whether  the  sort
  3708.                                  should be in  Ascending or Descending  order.
  3709.                                  Sorting the  data in  ascending order  causes
  3710.                                  numerical data to be sorted from the smallest
  3711.                                  number to  the largest  number (1,  2, 3,  4,
  3712.                                  etc.), while  textual  data  will  be  sorted
  3713.                                  alphabetically  (A, B,  C, D, etc).   Sorting
  3714.                                  the data in descending order has the opposite
  3715.                                  effect; numbers  will be arranged  from large
  3716.                                  to small  (5,4,3,2,1, etc), and  textual data
  3717.                                  will be sorted in  reverse alphabetical order
  3718.                                  (Z, Y, X, W, etc).
  3719.  
  3720.                   Reset          This command resets all of the sort settings.
  3721.                                  This function is  necessary when you need  to
  3722.                                  undefine the sort keys.
  3723.  
  3724.                   Start          Pressing the  Start key  in the  options menu
  3725.                                  will  cause  the  sort  to  be  performed  as
  3726.                                  indicated in the menu.
  3727.  
  3728.  
  3729.  
  3730.  
  3731.  
  3732.  
  3733.  
  3734.  
  3735.  
  3736.                                           51
  3737.  
  3738.  
  3739.  
  3740.  
  3741.  
  3742.  
  3743.  
  3744.  
  3745.         ---------------------------------------------------------------------
  3746.         /Data Fill
  3747.         ---------------------------------------------------------------------
  3748.         Function  Fill a range of cells with data.
  3749.  
  3750.         Remarks   This command allows  you to fill a specified  range of cells
  3751.                   with  text or numbers.   You will  be asked  for an equation
  3752.                   which is used to determine the values placed in each  of the
  3753.                   cells to be filled.
  3754.  
  3755.                   A variable named # is initialized to 0 and is incremented by
  3756.                   1  for each cell in  the range.  The  # variable may be used
  3757.                   anywhere in  the equation  to provide  an endless  number of
  3758.                   sequences.  The  equation entered with  this command may  be
  3759.                   any  legal formula  containing numbers,  operators, cell  or
  3760.                   range references, functions, or the # variable.
  3761.  
  3762.                   Cell  references  in  the formula  are  treated  as relative
  3763.                   unless  you  specifically  make them  absolute  using  the $
  3764.                   symbol.
  3765.  
  3766.         Examples  #
  3767.                   generates a sequence starting with 0 and incrementing by 1.
  3768.  
  3769.                   1000+#
  3770.                   generates  a sequence starting with 1000 and incrementing by
  3771.                   1.
  3772.  
  3773.                   5+#*3
  3774.                   generates a sequence starting with 5 and incrementing by 3.
  3775.  
  3776.                   @TODAY+#
  3777.                   generates  a  sequence  of date  numbers  starting  with the
  3778.                   current date.
  3779.  
  3780.  
  3781.  
  3782.         ---------------------------------------------------------------------
  3783.         /Data Value
  3784.         ---------------------------------------------------------------------
  3785.         Function  Convert formulas in a range to their values.
  3786.  
  3787.         Remarks   This command converts  formulas in a range to  their values.
  3788.                   You will  be asked to  define a  range of cells  to convert.
  3789.                   Since formulas require more memory than values, this command
  3790.                   helps conserve  memory when  you just need  a set  of values
  3791.                   rather than the formulas.
  3792.  
  3793.  
  3794.  
  3795.  
  3796.  
  3797.  
  3798.  
  3799.  
  3800.  
  3801.  
  3802.  
  3803.  
  3804.                                           52
  3805.  
  3806.  
  3807.  
  3808.  
  3809.  
  3810.  
  3811.  
  3812.  
  3813.         ---------------------------------------------------------------------
  3814.         /Data Modify
  3815.         ---------------------------------------------------------------------
  3816.         Function  Modify all numerical values in a range.
  3817.  
  3818.         Remarks   This command  allows you to  modify all  of the values  in a
  3819.                   range.  You may specify that each cell  in a specified range
  3820.                   be multiplied by 5, or  subtracted from the average value of
  3821.                   the range, or  that they be modified in any of the ways that
  3822.                   a legal formula  may provide.  You  will be asked  to define
  3823.                   the range  to modify, as well  as an equation to  modify the
  3824.                   cells with.
  3825.  
  3826.                   This command provides a variable named # which is set to the
  3827.                   value of each  cell in the range.  This variable may be used
  3828.                   just like a number or cell reference in the formula.
  3829.  
  3830.         Example   Below are examples of equations  and the way they modify the
  3831.                   range.
  3832.  
  3833.                   2*#       doubles all of the values in the range.
  3834.                   #^2       squares all of the values in the range.
  3835.                   #+3       adds 3 to all of the values in the range.
  3836.                   @ABS(#)   makes all of the values in the range positive.
  3837.  
  3838.  
  3839.  
  3840.  
  3841.         ---------------------------------------------------------------------
  3842.         /Data Base
  3843.         ---------------------------------------------------------------------
  3844.         Function  Define and use a range of cells as a database.
  3845.  
  3846.         Remarks   This command allows you  to define and use a range  of cells
  3847.                   as a database.  Each column in  the range will be treated as
  3848.                   a database field, and each row in the range will be  treated
  3849.                   as a record  in the database.  You may have  up to 23 fields
  3850.                   (columns)  in your  database.   If the  range you  define is
  3851.                   wider than  23 columns,  all columns past  the 23rd  will be
  3852.                   ignored.
  3853.  
  3854.                   The  top cell in each  column must contain  the name of that
  3855.                   field.
  3856.  
  3857.                   In addition,  InstaCalc will  use the  format of  the header
  3858.                   cell (whether Currency, Date, etc) for all data entered into
  3859.                   that field.   This means  it is not necessary  to pre-format
  3860.                   entire  columns of  blank cells  before  using the  database
  3861.                   form.
  3862.  
  3863.         Options   Range     You will be asked to  define the range of cells to
  3864.                             use for your  database.  Each column in  the range
  3865.                             will be treated  as a database field, and each row
  3866.                             in the  range will be  treated as a record  in the
  3867.                             database.
  3868.  
  3869.                   View      This  command  displays  the defined  range  in  a
  3870.  
  3871.  
  3872.                                           53
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.                             database  form  view,  using the  information  you
  3882.                             provided in the cell at the top of each column.
  3883.  
  3884.                             The following commands are  available in the  form
  3885.                             view:
  3886.  
  3887.                             Next      Move to the next record in the database.
  3888.  
  3889.                             Prior     Move  to   the  prior   record  in   the
  3890.                                       database.
  3891.  
  3892.                             Begin     Move  to   the  first   record  in   the
  3893.                                       database.
  3894.  
  3895.                             End       Move to the last record in the database.
  3896.  
  3897.                             Modify    Modify the  currently displayed  record.
  3898.                                       When modifying a record, the fields will
  3899.                                       be accessed in the order of  the columns
  3900.                                       in the worksheet.
  3901.  
  3902.                                       You may use <Enter>  to accept the value
  3903.                                       of each  field  and  move  to  the  next
  3904.                                       field, or you may use <Up> and <Down> to
  3905.                                       move  back  and  forth  between  fields.
  3906.                                       When  you  are  finished  modifying  the
  3907.                                       record, simply press <F10> to return  to
  3908.                                       the database menu.
  3909.  
  3910.                             Add       Allows you  to add  new  records to  the
  3911.                                       database.    Add  is similar  to  Modify
  3912.                                       except that you may press <F9> to accept
  3913.                                       the  entered  data  and  move  to a  new
  3914.                                       (blank) record.   Pressing <F10> accepts
  3915.                                       the entered  record and  returns you  to
  3916.                                       the database menu.
  3917.  
  3918.                             Find      Find a record in the database.  You will
  3919.                                       be  asked  to  enter  criteria  for  the
  3920.                                       record(s) to search  for.  This criteria
  3921.                                       can   use   field    names,   comparison
  3922.                                       operators   (=,<>,<=,    etc),   logical
  3923.                                       operators   (&,|,   or    ~)   or   even
  3924.                                       @functions.  For example, if you want to
  3925.                                       find all records where the  last name is
  3926.                                       Smith  and  the  state is  NY,  then you
  3927.                                       might use the following criteria:
  3928.  
  3929.                                       (LNAME="Smith")&(STATE="NY")
  3930.  
  3931.                             Del       Delete the  currently displayed  record.
  3932.                                       You  will  be   asked  to  confirm  this
  3933.                                       selection.
  3934.  
  3935.  
  3936.  
  3937.  
  3938.  
  3939.  
  3940.                                           54
  3941.  
  3942.  
  3943.  
  3944.  
  3945.  
  3946.  
  3947.  
  3948.  
  3949.         ---------------------------------------------------------------------
  3950.         /Data Goalseek
  3951.         ---------------------------------------------------------------------
  3952.         Function  Find  the value  which causes  a worksheet  model to  give a
  3953.                   particular result.
  3954.  
  3955.         Remarks   The  /Data Goalseek command  allows you to  easily determine
  3956.                   what value must  be entered into  a cell to  make a  formula
  3957.                   give  a  desired result.    The  formula  does not  have  to
  3958.                   directly reference the cell, and the model may be as complex
  3959.                   as desired.   The more complex  the worksheet, however,  the
  3960.                   longer the goalseeking will take.
  3961.  
  3962.                   To  perform  the  goalseeking,  select  the  /Data  Goalseek
  3963.                   command, then:
  3964.  
  3965.                   1. Select the formula you  want to achieve a particular goal
  3966.                   value.
  3967.                   2. Enter the goal value you want that formula to achieve.
  3968.                   3. Select the cell which InstaCalc should adjust to  achieve
  3969.                   that goal.
  3970.  
  3971.         Options   After InstaCalc finds  a solution, it displays  the solution
  3972.                   and provides the following options:
  3973.  
  3974.                   Use       Enter  the new value into the cell which InstaCalc
  3975.                             was adjusting.
  3976.  
  3977.                   Ignore    Restore  the  original  value to  the  cell  which
  3978.                             InstaCalc was adjusting.
  3979.  
  3980.         Example   You have a complex financial worksheet  model where cell Z73
  3981.                   contains  a formula which determines profit,  and cell C5 is
  3982.                   the number of  items which need to  be sold to achieve  that
  3983.                   profit.   To  determine  how  many items  you  must sell  to
  3984.                   achieve $10,000 profit:
  3985.  
  3986.                   1. Select /Data Goalseek.
  3987.                   2. Mark cell Z73 as the goal cell.
  3988.                   3. Enter 10000 as the goal value.
  3989.                   4. Mark cell C5 as the cell to change.
  3990.  
  3991.                   InstaCalc will then seek the  value for cell C5 which causes
  3992.                   cell Z73  to  return  10000.   InstaCalc  will  display  the
  3993.                   solution and will ask if you want to use the new value which
  3994.                   it just found, or if you want to ignore the new value.
  3995.  
  3996.  
  3997.  
  3998.         ---------------------------------------------------------------------
  3999.         /Data matriX
  4000.         ---------------------------------------------------------------------
  4001.         Function  Perform matrix operations on ranges.
  4002.  
  4003.         Remarks   The  /Data matriX command  allows you to  add, multiply, and
  4004.                   transpose ranges of cells.
  4005.  
  4006.  
  4007.  
  4008.                                           55
  4009.  
  4010.  
  4011.  
  4012.  
  4013.  
  4014.  
  4015.  
  4016.  
  4017.         Options   Multiply  Multiplies  two  ranges.   You  will  be  asked to
  4018.                             define the two  ranges to multiply together.   The
  4019.                             number of columns in  the first range must be  the
  4020.                             same as  the number of  rows in the  second range.
  4021.                             You will also be  asked to define an  output range
  4022.                             where the result will be placed.
  4023.  
  4024.                   Add       Adds two ranges  together.  You  will be asked  to
  4025.                             define the  two ranges to  add together.   The two
  4026.                             ranges must each have the same number  of rows and
  4027.                             columns.   You will  also  be asked  to define  an
  4028.                             output range where the result will be placed.
  4029.  
  4030.                   Transpose Transposes (swaps columns with rows) a range.  You
  4031.                             will be asked to define the range to transpose, as
  4032.                             well as an output range to place the result.
  4033.  
  4034.  
  4035.  
  4036.  
  4037.         ---------------------------------------------------------------------
  4038.         /Data Query
  4039.         ---------------------------------------------------------------------
  4040.         Function  Extract or delete records from a worksheet based database.
  4041.  
  4042.         Remarks   The  /Data  Query  command  allows  you  to  extract  (copy)
  4043.                   selected  database records  (or parts  of  records) from  an
  4044.                   input  range  to  an  output range,  or  to  delete selected
  4045.                   records from an input range.
  4046.  
  4047.         Options   Input          The input range  consists of a single  record
  4048.                                  per row,  where the  first row  in the  range
  4049.                                  contains the field names for the database.
  4050.  
  4051.                   Output         The output range  is used as the  location to
  4052.                                  place the  records extracted  from the  input
  4053.                                  range.  If  you only define the  output range
  4054.                                  as  one  row,  InstaCalc  will  automatically
  4055.                                  extend the range to row 4096.
  4056.  
  4057.                   Criteria       The  criteria   is  a   string  which   tells
  4058.                                  InstaCalc which records you are interested in
  4059.                                  extracting or deleting.   The criteria can be
  4060.                                  any valid InstaCalc  formula which returns  a
  4061.                                  TRUE  or FALSE value.  The criteria may treat
  4062.                                  any  of the database  field names as  if they
  4063.                                  were  range  names  in  the  formula.     The
  4064.                                  criteria  can  use  any  of  the   comparison
  4065.                                  operators (=,<>,<=, etc) or logical operators
  4066.                                  (&,|, or ~).
  4067.  
  4068.                                  Some example criteria are:
  4069.  
  4070.                                  STATE="Utah"
  4071.                                  All  records where  the STATE  field contains
  4072.                                  Utah
  4073.  
  4074.  
  4075.  
  4076.                                           56
  4077.  
  4078.  
  4079.  
  4080.  
  4081.  
  4082.  
  4083.  
  4084.  
  4085.                                  (STATE="Utah")&(LASTNAME="Smith")
  4086.                                  All records  where the  STATE field  contains
  4087.                                  Utah and the LASTNAME field contains Smith
  4088.  
  4089.                                  (STATE="Utah")&~(LASTNAME="Smith")
  4090.                                  All records  where the  STATE field  contains
  4091.                                  Utah but the LASTNAME field does not  contain
  4092.                                  Smith
  4093.  
  4094.                                  (STATE="Utah")|(STATE="California")
  4095.                                  All records  where the  STATE field  contains
  4096.                                  Utah or California
  4097.  
  4098.                                  QUANTITY>100
  4099.                                  All records where the QUANTITY field contains
  4100.                                  a value greater than 100
  4101.  
  4102.                   Extract        Allows you to extract (copy) selected records
  4103.                                  (and fields)  from  the Input  range  to  the
  4104.                                  Output  range.   The top  row  of the  Output
  4105.                                  range must contain the names of the  specific
  4106.                                  fields you  want extracted.  This  allows you
  4107.                                  to  extract   only  those   fields  you   are
  4108.                                  interested in.
  4109.  
  4110.                                  The Output range is erased before the records
  4111.                                  are  extracted.   If more  records match  the
  4112.                                  criteria than  will fit in  the Output range,
  4113.                                  an error message will appear.
  4114.  
  4115.                   Delete         Allows you to delete records  which match the
  4116.                                  Criteria from the  input range.  You  will be
  4117.                                  asked to confirm this selection with a Yes or
  4118.                                  No answer.
  4119.  
  4120.  
  4121.  
  4122.  
  4123.  
  4124.         ---------------------------------------------------------------------
  4125.         /Data Dist
  4126.         ---------------------------------------------------------------------
  4127.         Function  Generates a frequency distribution of a range of cells.
  4128.  
  4129.         Remarks   This command generates  a frequency distribution of  a range
  4130.                   of  cells.   You  simply  define the  range  of cells  which
  4131.                   contain the  values you want  a distribution of, and  a "bin
  4132.                   range",  which  is  simply a  column  of  increasing values.
  4133.                   InstaCalc will look  at the first value in  the "bin range",
  4134.                   count how  many cells in  the value  range are less  than or
  4135.                   equal to that value, and insert that count  into the cell to
  4136.                   the right of the first bin.
  4137.  
  4138.                   InstaCalc then looks at the second value in the "bin range",
  4139.                   counts how  many cells in the  value range are less  than or
  4140.                   equal to  that value but  are greater than the  previous bin
  4141.                   value, and inserts that count into the cell to  the right of
  4142.  
  4143.  
  4144.                                           57
  4145.  
  4146.  
  4147.  
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.                   the second bin.  This continues through the last cell in the
  4154.                   "bin range".
  4155.  
  4156.                   Finally, InstaCalc counts  the number of cells  in the value
  4157.                   range  which are  greater than  the  last cell  in the  "bin
  4158.                   range", and places that count to  the right of the cell just
  4159.                   under the "bin range".
  4160.  
  4161.                   Summary
  4162.  
  4163.                   1. Define the range containing your values.
  4164.  
  4165.                   2. Define the column range  containing your bin values.  The
  4166.                   bin values must be in increasing order.
  4167.  
  4168.                   3.  InstaCalc will  determine how  many  cells in  the value
  4169.                   range fall in  each of  the "bins"  in the bin  range.   The
  4170.                   result for each  bin will be placed in the cell to the right
  4171.                   of each bin.
  4172.  
  4173.                   By  graphing  (as  a  bar   graph)  the  result  of  a  data
  4174.                   distribution,  you will obtain  a histogram of  the original
  4175.                   data.
  4176.  
  4177.  
  4178.  
  4179.  
  4180.         ---------------------------------------------------------------------
  4181.         /Data Audit
  4182.         ---------------------------------------------------------------------
  4183.         Function  Allows you to audit (error check) your worksheet.
  4184.  
  4185.         Remarks   This command  provides several  auditing capabilities  which
  4186.                   can assist  you  in finding  errors  which sneak  into  your
  4187.                   worksheets.
  4188.  
  4189.         Options   Trace     Allows you to  highlight all formulas  which refer
  4190.                             to a specific cell.  InstaCalc will enter a  trace
  4191.                             mode,  where  pressing  <Enter> on  any  cell will
  4192.                             highlight all formulas  which reference that cell.
  4193.                             All the  standard movement  keys are  available to
  4194.                             move  through the  worksheet  to find  highlighted
  4195.                             cells which  may not  be on the  screen.   To exit
  4196.                             from Trace mode, simply press <Esc>.
  4197.  
  4198.                   Map       Displays your worksheet in a compressed form where
  4199.                             each cell is  represented by one of  the following
  4200.                             characters:
  4201.  
  4202.                             +    Formula
  4203.                             #    Number
  4204.                             A    Text
  4205.                             ?    Error
  4206.  
  4207.                             This  allows  you  to   easily  view  the  overall
  4208.                             structure of  your worksheet.   The  map view  can
  4209.                             help  you  locate  errors which  may  normally  be
  4210.  
  4211.  
  4212.                                           58
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.                             difficult  to   spot,  such   as  a   number  cell
  4222.                             accidentally placed in a column of formulas.
  4223.  
  4224.                             You  may use  any  of the  movement  keys to  move
  4225.                             through  your worksheet, and  the contents  of the
  4226.                             current cell will be displayed on the command line
  4227.                             as usual.  You will  not be able to edit cells  or
  4228.                             access  the menu from this  view however.  To exit
  4229.                             from map mode, simply press the <Esc> key.
  4230.  
  4231.  
  4232.  
  4233.  
  4234.  
  4235.         ---------------------------------------------------------------------
  4236.         /Macro Edit
  4237.         ---------------------------------------------------------------------
  4238.         Function  Edit or create a macro.
  4239.  
  4240.         Remarks   This command allows you to edit or create a macro.  You will
  4241.                   be asked for  the name of a macro to edit.  Pressing <Enter>
  4242.                   without entering a macro name  will cause the InstaCalc File
  4243.                   Manager  to  appear on-screen;  the macro  name may  then be
  4244.                   chosen  from the File Manager.   Once a macro is chosen, the
  4245.                   InstaCalc  Macro Editor will display the macro and allow you
  4246.                   to edit  it.    The following  commands  are  available  for
  4247.                   editing the macro.
  4248.  
  4249.  
  4250.                   <Up> <Down>
  4251.                   <Left> <Right> The arrow keys move the cursor up or down one
  4252.                                  line, or left or right one character.
  4253.                   <Home>         This key moves the cursor to the beginning of
  4254.                                  the line.
  4255.                   <End>          This  key moves the cursor  to the end of the
  4256.                                  line.
  4257.                   <Ctrl><Right>  This key  moves the  cursor one  word to  the
  4258.                                  right.
  4259.                   <Ctrl><Left>   This key  moves the  cursor one  word to  the
  4260.                                  left.
  4261.  
  4262.                   <Ctrl><Home>   This  key moves the cursor to  the top of the
  4263.                                  file.
  4264.                   <Ctrl><End>    This  key moves the cursor  to the end of the
  4265.                                  file.
  4266.  
  4267.                   <PgDn>         This key moves the cursor down one screen.
  4268.                   <PgUp>         This key moves the cursor up one screen.
  4269.  
  4270.                   <BkSp>         This key deletes the character to the left of
  4271.                                  the   cursor   and   shifts   the   following
  4272.                                  characters in the line to the left to fill in
  4273.                                  the empty space.
  4274.  
  4275.                   <Ctrl><BkSp>   This key deletes the entire line.
  4276.  
  4277.                   <Del>          This key deletes the character underneath the
  4278.  
  4279.  
  4280.                                           59
  4281.  
  4282.  
  4283.  
  4284.  
  4285.  
  4286.  
  4287.  
  4288.  
  4289.                                  cursor and shifts the following characters in
  4290.                                  the  line to  the left to  fill in  the empty
  4291.                                  space.
  4292.  
  4293.                   <Ins>          This key toggles between insert and overwrite
  4294.                                  modes.  When you are in insert mode, typing a
  4295.                                  character will insert  the new character into
  4296.                                  the  line at the  point where the  cursor is.
  4297.                                  The character under  the cursor and  those to
  4298.                                  the  right of the  cursor are shifted  to the
  4299.                                  right  to make  room for  the  new character.
  4300.                                  When you  are  in overwrite  mode,  typing  a
  4301.                                  character  will replace  the character  under
  4302.                                  the  cursor with the new character.  When you
  4303.                                  are in  insert mode,  the cursor  will be  an
  4304.                                  underline.  In overwrite mode the cursor will
  4305.                                  be a solid block.
  4306.  
  4307.                   <F1> Help      This key causes a help screen to appear which
  4308.                                  lists all of the  commands available for text
  4309.                                  editing.
  4310.  
  4311.                   <F2> Mark      This  key  turns on  marking  at the  current
  4312.                                  line.  Moving the cursor  after pressing this
  4313.                                  key causes  lines between  that line and  the
  4314.                                  new  cursor   position  to   be  highlighted.
  4315.                                  Pressing  <F2> a  second time  will turn  off
  4316.                                  text marking.
  4317.  
  4318.                   <F3> Cut       Pressing this  key  with  marking  turned  on
  4319.                                  (<F2>)  causes the marked lines to be cut out
  4320.                                  of the file and placed  in a buffer.  You may
  4321.                                  then move to another location in the file and
  4322.                                  use the <F4> key to paste the lines back into
  4323.                                  the  file.   The buffer  will  only hold  one
  4324.                                  block of lines,  so if you cut  data a second
  4325.                                  time, the new data replaces the older data in
  4326.                                  the buffer.
  4327.  
  4328.                   <F4> Paste     This  keys causes the  contents of the buffer
  4329.                                  to  be pasted  into the  file  at the  cursor
  4330.                                  location.  This does not clear the buffer, so
  4331.                                  you  may paste the same buffer data into more
  4332.                                  than one location.
  4333.  
  4334.                   <F5> DelLine   This command deletes the  line the cursor  is
  4335.                                  on.
  4336.  
  4337.                   <F6> Search    This  command  allows  you  to  search  for a
  4338.                                  string in the  file.   You will  be asked  to
  4339.                                  enter  the  text  you  want  to  search  for.
  4340.                                  Simply enter the text, and the cursor will be
  4341.                                  moved to  the next  occurrence of that  text.
  4342.                                  The search  is case insensitive,  which means
  4343.                                  that hello will match hello, Hello, or HeLlO.
  4344.  
  4345.                   <F7> Save      This command  allows you to save  the current
  4346.  
  4347.  
  4348.                                           60
  4349.  
  4350.  
  4351.  
  4352.  
  4353.  
  4354.  
  4355.  
  4356.  
  4357.                                  file to disk without having to exit.
  4358.  
  4359.                   <F10> Exit     This  command  allows you  to  exit  from the
  4360.                                  editor.  If you have  made any changes to the
  4361.                                  file, you will be  asked if you want  to save
  4362.                                  it first.
  4363.  
  4364.  
  4365.  
  4366.         ---------------------------------------------------------------------
  4367.         /Macro List
  4368.         ---------------------------------------------------------------------
  4369.         Function  List all macros in the current directory.
  4370.  
  4371.         Remarks   This  command  lists  all  of  the  macros  in  the  current
  4372.                   directory.  The  command uses the InstaCalc File  Manager to
  4373.                   find files with the .MAC extension.
  4374.  
  4375.  
  4376.  
  4377.         ---------------------------------------------------------------------
  4378.         /Macro Run
  4379.         ---------------------------------------------------------------------
  4380.         Function  Run a macro or application program.
  4381.  
  4382.         Remarks   This command executes a macro (or application program).  You
  4383.                   will be  asked for the name of a macro to run.  Pressing the
  4384.                   <Enter> key without indicating a  macro to be run will cause
  4385.                   the  InstaCalc File  Manager to appear  on-screen.   You may
  4386.                   then choose the macro to be run using the File Manager.  For
  4387.                   information on creating macros and application programs, see
  4388.                   the section InstaCalc Applications.
  4389.  
  4390.  
  4391.  
  4392.         ---------------------------------------------------------------------
  4393.         /OpSys
  4394.         ---------------------------------------------------------------------
  4395.         Function  Temporarily returns to DOS.
  4396.  
  4397.         Remarks   This command allows  you to  temporarily return  to the  DOS
  4398.                   command line,  where you can  execute DOS commands  or other
  4399.                   programs.  When you are ready to return to InstaCalc, simply
  4400.                   type:
  4401.  
  4402.                   EXIT
  4403.  
  4404.                   at the DOS prompt.
  4405.  
  4406.                   IMPORTANT: Never run TSRs from the /OpSys command line (this
  4407.                   includes  the  DOS  PRINT  command).    Doing  so can  cause
  4408.                   unexpected problems to occur.
  4409.  
  4410.                   This command is not available when running as a pop up.
  4411.  
  4412.  
  4413.  
  4414.  
  4415.  
  4416.                                           61
  4417.  
  4418.  
  4419.  
  4420.  
  4421.  
  4422.  
  4423.  
  4424.  
  4425.         ---------------------------------------------------------------------
  4426.         /Quit
  4427.         ---------------------------------------------------------------------
  4428.         Function  Exits from InstaCalc.
  4429.  
  4430.         Remarks   This  command allows you to leave  InstaCalc entirely.  This
  4431.                   is  an intelligent exit  command; if you  have made changes,
  4432.                   InstaCalc will allow  you to save  the file before  exiting.
  4433.                   If no changes have been made, InstaCalc will simply exit the
  4434.                   program.
  4435.  
  4436.                   When running InstaCalc as a pop up  program, you will not be
  4437.                   asked to confirm exiting, because your data is not lost when
  4438.                   you quit.
  4439.  
  4440.         Options   If changes  have been made  to the Worksheet since  the last
  4441.                   time you saved it, you will be asked if you want to lose the
  4442.                   changes you made:
  4443.  
  4444.                   No   Returns  you  to  the  Worksheet  without  exiting  the
  4445.                        program.
  4446.  
  4447.                   Yes  Exits InstaCalc.   Any  changes made  to the  Worksheet
  4448.                        will be lost.
  4449.  
  4450.                   Save Saves the Worksheet, then exits the InstaCalc program.
  4451.  
  4452.  
  4453.  
  4454.  
  4455.  
  4456.  
  4457.  
  4458.  
  4459.  
  4460.  
  4461.  
  4462.  
  4463.  
  4464.  
  4465.  
  4466.  
  4467.  
  4468.  
  4469.  
  4470.  
  4471.  
  4472.  
  4473.  
  4474.  
  4475.  
  4476.  
  4477.  
  4478.  
  4479.  
  4480.  
  4481.  
  4482.  
  4483.  
  4484.                                           62
  4485.  
  4486.  
  4487.  
  4488.  
  4489.  
  4490.  
  4491.  
  4492.  
  4493.         BUILT-IN FUNCTIONS
  4494.         InstaCalc  provides built-in  functions  which  you  can use  in  your
  4495.         formulas.  These  built-in functions each begin with  the character @,
  4496.         and are often called at functions.
  4497.  
  4498.         Most of these functions require one or more arguments.  An argument is
  4499.         a value  which the  function uses  as an  input to  provide an  output
  4500.         value.  An argument  may be a number, a text string,  a reference to a
  4501.         value  in another  cell,  or another  formula.   In  the  case of  the
  4502.         statistical functions, an argument may also be a range of cells.  If a
  4503.         function requires arguments, then they are enclosed in parentheses and
  4504.         immediately  follow  the name  of  the @function.   If  more  than one
  4505.         argument is  required, they must  be separated from each  other with a
  4506.         comma.
  4507.  
  4508.         A built-in function can  return either a numerical  or text value  and
  4509.         may be treated exactly like a number or text would be.
  4510.  
  4511.         Example   A cell contains the formula =2*@ABS(-3).
  4512.  
  4513.                   @ABS is  the name of  a built-in function which  returns the
  4514.                   absolute (positive) value of its argument.
  4515.  
  4516.                   -3 is the argument to the function.
  4517.  
  4518.                   The function returns a  value of 3, and is used  in the rest
  4519.                   of the  formula just like  the number 3.   The value  of the
  4520.                   entire formula is 6 (2 times the value of the @function).
  4521.  
  4522.         If  the value that a function returns  is an error, it will return the
  4523.         special value ERROR.  A formula which contains a function with a value
  4524.         of ERROR will also return ERROR as the value for the cell it is in.
  4525.  
  4526.  
  4527.  
  4528.  
  4529.  
  4530.  
  4531.  
  4532.  
  4533.  
  4534.  
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.  
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.                                           63
  4553.  
  4554.  
  4555.  
  4556.  
  4557.  
  4558.  
  4559.  
  4560.  
  4561.         Mathematical   InstaCalc's  math  functions  allow  your  formulas  to
  4562.                        perform more sophisticated mathematical operations than
  4563.                        the operators alone can provide.
  4564.  
  4565.         Trigonometric  InstaCalc's trigonometry functions work the same way as
  4566.                        the mathematical  functions,  but  they  specialize  in
  4567.                        working with angles.
  4568.  
  4569.                        All angle  arguments and  results are  in radians.   To
  4570.                        convert  from  degrees  to  radians,  use  the  @RADIAN
  4571.                        function.  To convert from radians to degrees, use  the
  4572.                        @DEGREE function.
  4573.  
  4574.         Statistical    InstaCalc's statistical functions allow  you to analyze
  4575.                        and  summarize your  data in  a variety  of ways.   The
  4576.                        statistical  functions  calculate  and  return  various
  4577.                        statistics of a  list of values.  The  list may consist
  4578.                        of  numbers,  references  to  values  in  other  cells,
  4579.                        formulas, or  a range  of cells.   Ranges of  cells are
  4580.                        defined by using the cell names of two opposite corners
  4581.                        of the  range separated  by two  periods (for  example:
  4582.                        C14..D16).   Each individual item  in the list  must be
  4583.                        separated by a comma.
  4584.  
  4585.                        For example, suppose you want to sum 1.23, the value in
  4586.                        the cell A1, and the  values in each cell in  the range
  4587.                        defined by the cells C14 and D16.  You would simply use
  4588.                        the formula:
  4589.  
  4590.                        =@SUM(1.23,A1,C14..D16)
  4591.  
  4592.  
  4593.         Financial      InstaCalc's financial  functions allow  you to  perform
  4594.                        many powerful analyses.   Functions include formulas to
  4595.                        compute time value of  money calculations, depreciation
  4596.                        calculations, and growth rate calculations.
  4597.  
  4598.  
  4599.         Date/Time      InstaCalc  represents dates as the number of days since
  4600.                        December 31, 1899.  For example:
  4601.  
  4602.                        Jan 1, 1900 = 1
  4603.                        Jan 2, 1900 = 2
  4604.  
  4605.                        and so on.
  4606.  
  4607.                        Time is represented as a fraction of a day (starting at
  4608.                        midnight).  For example:
  4609.  
  4610.                        midnight = 0.0
  4611.                        noon = 0.5 because it is half way through the day,
  4612.                        6:00PM = 0.75 because it is 3/4 way through the day,
  4613.  
  4614.                        and so on.
  4615.  
  4616.                        This  allows dates  and times  to  be manipulated  with
  4617.                        ordinary  math operations.  For example, you could find
  4618.  
  4619.  
  4620.                                           64
  4621.  
  4622.  
  4623.  
  4624.  
  4625.  
  4626.  
  4627.  
  4628.  
  4629.                        out what   day, month,  and year  90 days from today is
  4630.                        by  simply adding  90 to  the  number which  represents
  4631.                        today's date. 
  4632.  
  4633.         Logical        The   InstaCalc   logical  functions   evaluate   their
  4634.                        arguments  to determine  one thing:  truth or  falsity.
  4635.                        Typically,  logical functions supply the value 1 as the
  4636.                        representative of truth, and 0 as the representative of
  4637.                        falsity.
  4638.  
  4639.         Macro          InstaCalc   provides  several   @functions  which   are
  4640.                        designed to be used in application programs.
  4641.  
  4642.         String         The  InstaCalc string  functions  allow you  to process
  4643.                        character  strings more  efficiently.   They are  often
  4644.                        used when importing data from other programs, printing,
  4645.                        and in macros that process strings.
  4646.  
  4647.         Data           InstaCalc's  data  functions  allow  your  formulas  to
  4648.                        access data  in a variety of ways,  from lookup tables,
  4649.                        to access to global and cell statistics.
  4650.  
  4651.  
  4652.  
  4653.         ---------------------------------------------------------------------
  4654.         @ABS                                                      Mathematical
  4655.         ---------------------------------------------------------------------
  4656.         Function  Returns the absolute (positive) value of a number.
  4657.  
  4658.         Syntax    @ABS(x)
  4659.                   where x is a number, a cell address, or a calculated value.
  4660.  
  4661.         Example   =@ABS(-212) = 212
  4662.                   =@ABS(25.3) = 25.3
  4663.                   =@ABS(B5) = 13, if the value of B5 is 13 or -13
  4664.                   =@ABS(2-3) = 1
  4665.  
  4666.  
  4667.         ---------------------------------------------------------------------
  4668.         @ACOS                                                     Trigonometry
  4669.         ---------------------------------------------------------------------
  4670.         Function  Returns the arc cosine of a number.
  4671.  
  4672.         Syntax    @ACOS(x)
  4673.                   where x is a number, a cell address, or a calculated value.
  4674.  
  4675.         Remarks   This  function returns  the angle  whose cosine  is x.   The
  4676.                   value of x  must be between -1  and 1, or @ACOS  will return
  4677.                   the value ERROR.  The value of the angle returned will be in
  4678.                   radians, and will  lie between 0  and pi.   If you want  the
  4679.                   result  to be  in  degrees instead,  then  use the  @DEGREES
  4680.                   function to convert the result.
  4681.  
  4682.         Example   =@ACOS(-0.990) = 3
  4683.                   =@ACOS(-1) = 3.14159
  4684.  
  4685.  
  4686.  
  4687.  
  4688.                                           65
  4689.  
  4690.  
  4691.  
  4692.  
  4693.  
  4694.  
  4695.  
  4696.  
  4697.         ---------------------------------------------------------------------
  4698.         @ASIN                                                     Trigonometry
  4699.         ---------------------------------------------------------------------
  4700.         Function  Returns the arc sine of a number.
  4701.  
  4702.         Syntax    @ASIN(x)
  4703.                   where x is a number, a cell address, or a calculated value. 
  4704.  
  4705.         Remarks   This  function returns the angle whose sine is x.  The value
  4706.                   of x must be between -1 to 1, or @ASIN will return the value
  4707.                   ERROR.  The value of the  angle returned will be in radians,
  4708.                   and will lie between pi/2 and -pi/2.  If you want the result
  4709.                   to be in degrees instead,  then use the @DEGREES function to
  4710.                   convert the result.
  4711.  
  4712.         Example   =@ASIN(0.1411) = 0.141572
  4713.                   =@ASIN(1) = 1.570796
  4714.                   =@DEGREES(@ASIN(1)) = 90
  4715.  
  4716.  
  4717.         ---------------------------------------------------------------------
  4718.         @ATAN                                                     Trigonometry
  4719.         ---------------------------------------------------------------------
  4720.         Function  Returns the arc tangent of a number.
  4721.  
  4722.         Syntax    @ATAN(x)
  4723.                   where x is a number, a cell address, or a calculated value.
  4724.  
  4725.         Remarks   This function  returns the  angle whose tangent  is x.   The
  4726.                   value of the  angle returned is in radians.  If you want the
  4727.                   result  to be  in  degrees instead,  then  use the  @DEGREES
  4728.                   function to convert the result.
  4729.  
  4730.                   Since the  @ATAN function finds  an angle based on  a single
  4731.                   value, the result is limited to quadrants I and IV (-pi/2 to
  4732.                   pi/2).  If you want to find a 4 quadrant angle, you must use
  4733.                   the @ATAN2 function.
  4734.  
  4735.         Example   =@ATAN(1) = 0.7854
  4736.                   =@DEGREES(@ATAN(1)) = 45
  4737.  
  4738.  
  4739.  
  4740.         ---------------------------------------------------------------------
  4741.         @ATAN2                                                    Trigonometry
  4742.         ---------------------------------------------------------------------
  4743.         Function  Returns the four quadrant arc tangent of y/x.
  4744.  
  4745.         Syntax    @ATAN2(x,y)
  4746.                   where x and  y are  numbers, cell  addresses, or  calculated
  4747.                   values.
  4748.  
  4749.         Remarks   This function returns the angle whose tangent is y/x.
  4750.  
  4751.                   The @ATAN2 function calculates the value of  the arc tangent
  4752.                   differently  than the  @ATAN  function.    Where  the  @ATAN
  4753.                   function takes as its argument the value of the tangent, the
  4754.  
  4755.  
  4756.                                           66
  4757.  
  4758.  
  4759.  
  4760.  
  4761.  
  4762.  
  4763.  
  4764.  
  4765.                   @ATAN2  function calculates  the value  of  the arc  tangent
  4766.                   using the x and y coordinates.   The result will be a full 4
  4767.                   quadrant angle, and will be between -pi and pi.
  4768.  
  4769.         Example   =@ATAN2(1,1) = 0.7854
  4770.                   =@DEGREE(@ATAN2(1,1)) = 45
  4771.                   =@DEGREE(@ATAN2(-1,-1)) = -135
  4772.  
  4773.  
  4774.         ---------------------------------------------------------------------
  4775.         @AVG                                                       Statistical
  4776.         ---------------------------------------------------------------------
  4777.         Function  Returns the average of a list of values.
  4778.  
  4779.         Syntax    @AVG(list)
  4780.                   where list is  a list  of values separated  by commas, or  a
  4781.                   range containing values, or some combination of the two.
  4782.  
  4783.         Remarks   This function calculates the average, or mean, of the values
  4784.                   in list.
  4785.  
  4786.                   The @AVG  function will completely  ignore all items  in the
  4787.                   list which are  text or blank.   This means  that if a  text
  4788.                   string is in a range in list, you do not have to worry about
  4789.                   it being used incorrectly in the calculation.
  4790.  
  4791.         Example   =@AVG(0,1,2,3,4,5,6,7,8,9) = 4.5
  4792.  
  4793.                   If the cells A1 through A10 contain the values listed above,
  4794.                   then
  4795.  
  4796.                   =@AVG(A1..A10) = 4.5
  4797.  
  4798.                   =@AVG(1234,6435,2567) = 3412
  4799.  
  4800.  
  4801.  
  4802.         ---------------------------------------------------------------------
  4803.         @CELL                                                             Data
  4804.         ---------------------------------------------------------------------
  4805.         Function  Returns information about a cell.
  4806.  
  4807.         Syntax    @CELL(attribute,range)
  4808.                   where  attribute  is  a  string  in  quotations  or  a  cell
  4809.                   reference; and range is a cell range, named or otherwise.
  4810.  
  4811.         Remarks   This  function returns information about the upper left cell
  4812.                   in range.   Although  the information is  only for  a single
  4813.                   cell,  range must be entered as a  range instead of a single
  4814.                   cell.    Attribute must  be  one of  the  following strings:
  4815.                   "address", "col", "contents", "format", "prefix", "protect",
  4816.                   "row",   or  "type".     @CELL  is  primarily   for  use  in
  4817.                   applications to  determine certain  characteristics about  a
  4818.                   cell.
  4819.  
  4820.  
  4821.  
  4822.  
  4823.  
  4824.                                           67
  4825.  
  4826.  
  4827.  
  4828.  
  4829.  
  4830.  
  4831.  
  4832.  
  4833.                   attribute      @CELL returns
  4834.                   "address"      the name of the cell (for example B5)
  4835.  
  4836.                   "col"          the column number of the cell (1 through 256)
  4837.  
  4838.                   "contents"     the contents of the cell
  4839.  
  4840.                   "format"       the formatting of the cell
  4841.                                  0 Default
  4842.                                  1 Fixed
  4843.                                  2 Currency
  4844.                                  3 Percent
  4845.                                  4 Scientific
  4846.                                  5 Hidden
  4847.                                  6 Text
  4848.                                  7 Fixed with commas
  4849.                                  8 Currency with commas
  4850.                                  9 Percent with commas
  4851.                                  10 dd-mmm-yy
  4852.                                  11 dd-mmm
  4853.                                  12 mmm-yy
  4854.                                  13 mm/dd/yy
  4855.                                  14 Month DD, YYYY
  4856.                                  15 HH:MM AM/PM
  4857.                                  16 HH:MM Military
  4858.                                  17 General
  4859.  
  4860.                   "prefix"       the justification character of the cell
  4861.                                  ' if left justified
  4862.                                  " if right justified
  4863.                                  ^ if centered
  4864.                                  blank if the cell doesn't contain text
  4865.  
  4866.                   "protect"      the protection status of the cell
  4867.                                  0 = Not protected, 1 = Protected
  4868.  
  4869.                   "row"          the row number of the cell (1 through 4096)
  4870.  
  4871.                   "type"         the type of data in the cell.
  4872.                                  BLANK,   FORMAT,   NUMBER,   TEXT,   FORMULA,
  4873.                                  TXTFORM, ERROR
  4874.  
  4875.                   "width"        the width of the column the cell is in.
  4876.  
  4877.  
  4878.         ---------------------------------------------------------------------
  4879.         @CHANGED                                                         Macro
  4880.         ---------------------------------------------------------------------
  4881.         Function  Returns the save status of the Worksheet.
  4882.  
  4883.         Syntax    @CHANGED
  4884.  
  4885.         Remarks   This function  returns a  value of 1  (TRUE) if  any changes
  4886.                   have been made to the Worksheet since it was last saved, and
  4887.                   0 (FALSE) if no changes have been made.
  4888.  
  4889.                   This  function is useful in applications to easily determine
  4890.  
  4891.  
  4892.                                           68
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.  
  4901.                   whether  the application needs  to save the  current file or
  4902.                   not.
  4903.  
  4904.         Example   #IF @changed
  4905.                     '/fsMYFILE<Enter>
  4906.                   #ENDIF
  4907.  
  4908.                   These  3 lines in an  application program cause InstaCalc to
  4909.                   test whether  any changes have  been made to  the Worksheet,
  4910.                   and do a /File Save if they have.
  4911.  
  4912.  
  4913.  
  4914.         ---------------------------------------------------------------------
  4915.         @CHAR                                                           String
  4916.         ---------------------------------------------------------------------
  4917.         Function  Returns a character, based on its ASCII value.
  4918.  
  4919.         Syntax    @CHAR(x)
  4920.                   where x is a number, a cell address, or a calculated value.
  4921.  
  4922.         Remarks   This function returns  the ASCII character for  the value x.
  4923.                   The value of x must lie in the range 1 to 255.
  4924.  
  4925.         Example   =@CHAR(42) = *
  4926.                   =@CHAR(55) = 7
  4927.                   =@CHAR(80) = P
  4928.                   =@CHAR(113) = q
  4929.  
  4930.  
  4931.         ---------------------------------------------------------------------
  4932.         @CHOOSE                                                           Data
  4933.         ---------------------------------------------------------------------
  4934.         Function  Choose an item from a list.
  4935.  
  4936.         Syntax    @CHOOSE(x,y1,y2,y3...yn)
  4937.                   where x is an offset value, and y1...yn is the list of items
  4938.                   to choose from.
  4939.  
  4940.         Remarks   This function performs a simple lookup based on the value of
  4941.                   x.  If x has a value of 1, then @CHOOSE will return y1; if x
  4942.                   has a value  of 2, then @CHOOSE  will return y2, and  so on.
  4943.                   The items in the list can be numeric, text, or both.
  4944.  
  4945.                   If x is less  than 1 or greater than the number  of items in
  4946.                   the list, then @CHOOSE will return the value ERROR.
  4947.  
  4948.         Example   If A1 contains the value 3, then
  4949.  
  4950.                   @CHOOSE(A1,"Sun","Mon","Tue","Wed","Thu","Fri","Sat")=Tue
  4951.  
  4952.                   and
  4953.  
  4954.                   =@CHOOSE(A1,23,"Item 2",17) = 17
  4955.  
  4956.                   =@CHOOSE(4,"Item 1","Item 2","Item 3") = ERROR
  4957.  
  4958.  
  4959.  
  4960.                                           69
  4961.  
  4962.  
  4963.  
  4964.  
  4965.  
  4966.  
  4967.  
  4968.  
  4969.         ---------------------------------------------------------------------
  4970.         @CINT                                                        Financial
  4971.         ---------------------------------------------------------------------
  4972.         Function  Returns the principal and interest after compounding.
  4973.  
  4974.         Syntax    @CINT(principal,int,n,q)
  4975.                   where  principal, int, n, and q are numbers, cell addresses,
  4976.                   or calculated values.
  4977.  
  4978.         Remarks   This  function returns  the total  amount  of principal  and
  4979.                   interest accumulated  after compounding.   principal is  the
  4980.                   starting principal amount, int  is the rate of interest  per
  4981.                   period, n  is the number of periods, and  q is the number of
  4982.                   times per period that interest is compounded.
  4983.  
  4984.  
  4985.  
  4986.         ---------------------------------------------------------------------
  4987.         @CNAME                                                            Data
  4988.         ---------------------------------------------------------------------
  4989.         Function  Returns the name of a cell.
  4990.  
  4991.         Syntax    @CNAME(col,row)
  4992.                   where col and row are numbers, cell addresses, or calculated
  4993.                   values.
  4994.  
  4995.         Remarks   This  functions returns  the name  of  a cell  based on  the
  4996.                   column  and  row number  of  the  cell.   This  function  is
  4997.                   especially  useful  in  application  program commands  which
  4998.                   require the name of a cell.
  4999.  
  5000.         Example   =@CNAME(1,1,1) = A1
  5001.                   =@CNAME(28,2,3) = AB2
  5002.  
  5003.  
  5004.         ---------------------------------------------------------------------
  5005.         @CODE                                                           String
  5006.         ---------------------------------------------------------------------
  5007.         Function  Returns the ASCII value of a character.
  5008.  
  5009.         Syntax    @CODE(string)
  5010.                   where string is a string in quotations, or a cell address.
  5011.  
  5012.         Remarks   This function returns the ASCII value of the first character
  5013.                   in string.   If the length  of string is  zero, or is  not a
  5014.                   string, then @CODE will return the value ERROR.
  5015.  
  5016.         Example   =@CODE("Test") = 84
  5017.                   =@CODE("test") = 116
  5018.                   =@CODE("@") = 64
  5019.                   =@CODE(" ") = 32
  5020.  
  5021.  
  5022.  
  5023.  
  5024.  
  5025.  
  5026.  
  5027.  
  5028.                                           70
  5029.  
  5030.  
  5031.  
  5032.  
  5033.  
  5034.  
  5035.  
  5036.  
  5037.         ---------------------------------------------------------------------
  5038.         @COLS                                                             Data
  5039.         ---------------------------------------------------------------------
  5040.         Function  Returns the number of columns in a range.
  5041.  
  5042.         Syntax    @COLS(range)
  5043.                   where range is a cell range, either named or otherwise.
  5044.  
  5045.         Remarks   This function returns the number of columns in range.
  5046.  
  5047.         Example   If the range A1..G20 is named BUILDINGS then
  5048.  
  5049.                   =@COLS(BUILDINGS) = 7
  5050.  
  5051.  
  5052.  
  5053.         ---------------------------------------------------------------------
  5054.         @COS                                                      Trigonometry
  5055.         ---------------------------------------------------------------------
  5056.         Function  Returns the cosine of an angle.
  5057.  
  5058.         Syntax    @COS(x)
  5059.                   where x is a number, a cell address, or a calculated value.
  5060.  
  5061.         Remarks   This function returns the cosine of the angle x.  x  must be
  5062.                   in radians.   If  x is  in degrees,  then you  must use  the
  5063.                   @RADIANS function to convert x to radians first.  The result
  5064.                   of @COS will be between -1 and 1.
  5065.  
  5066.                   Since the secant of an angle is simply the reciprocal of the
  5067.                   @COS function, you  can calculate the secant of  an angle by
  5068.                   dividing 1 by the cosine of the angle.
  5069.  
  5070.         Example   =@COS(3)  = -0.9900
  5071.                   =@COS(@PI)  = -1
  5072.                   =@COS(@RADIANS(180)) = -1
  5073.                   =1/@COS(4) = -1.52988 (the secant of 4)
  5074.  
  5075.  
  5076.         ---------------------------------------------------------------------
  5077.         @COSH                                                     Trigonometry
  5078.         ---------------------------------------------------------------------
  5079.         Function  Returns the hyperbolic cosine of an angle.
  5080.  
  5081.         Syntax    @COSH(x)
  5082.                   where x is a number, a cell address, or a calculated value.
  5083.  
  5084.         Remarks   This function  returns the hyperbolic cosine of the angle x.
  5085.                   x must be in radians.  If x is in degrees, then you must use
  5086.                   the @RADIANS function to convert x to radians first.
  5087.  
  5088.         Example   =@COSH(3) = 10.068
  5089.                   =@COSH(@PI) = 11.592
  5090.                   =@COSH(@RADIANS(180)) = 11.592
  5091.  
  5092.  
  5093.  
  5094.  
  5095.  
  5096.                                           71
  5097.  
  5098.  
  5099.  
  5100.  
  5101.  
  5102.  
  5103.  
  5104.  
  5105.         ---------------------------------------------------------------------
  5106.         @COUNT                                                     Statistical
  5107.         ---------------------------------------------------------------------
  5108.         Function  Returns the number of values in a list.
  5109.  
  5110.         Syntax    @COUNT(list)
  5111.                   where  list is a  list of  items separated  by commas,  or a
  5112.                   range containing values, or some combination of the two.
  5113.  
  5114.         Remarks   This function counts all of  the cells in list which contain
  5115.                   data.    Blank  cells  in  a  range  are  not  counted,  but
  5116.                   individual  cell references are always counted, even if they
  5117.                   are blank.
  5118.  
  5119.         Example   =@COUNT(0,1,2,3,4,5,6,7,8,9) = 10
  5120.  
  5121.                   If range A1 to A10 contained a list of names, then
  5122.  
  5123.                   =@COUNT(A1..A10) = 10
  5124.  
  5125.                   If 5 of those cells were deleted, then
  5126.  
  5127.                   =@COUNT(A1..A10) = 5
  5128.  
  5129.                   and
  5130.  
  5131.                   =@COUNT(A1..A10,C5) = 6, even if cell C5 is blank.
  5132.  
  5133.  
  5134.  
  5135.         ---------------------------------------------------------------------
  5136.         @CTERM                                                       Financial
  5137.         ---------------------------------------------------------------------
  5138.         Function  Returns the number  of periods for an investment  to reach a
  5139.                   future value.
  5140.  
  5141.         Syntax    @CTERM(rate,fv,pv)
  5142.                   where  rate, fv  and  pv  are  numbers, cell  addresses,  or
  5143.                   calculated values.
  5144.  
  5145.         Remarks   This function returns the number of  periods needed to reach
  5146.                   a given future  value, using a specified  initial investment
  5147.                   and a periodic interest rate.
  5148.  
  5149.                   rate is the  periodic interest rate, fv is  the future value
  5150.                   to be reached, and pv is the initial investment.
  5151.  
  5152.                   @CTERM is often used  in retirement planning, where a  fixed
  5153.                   amount  of money  (usually large)  is  necessary to  sustain
  5154.                   retirement.     @CTERM  can  determine  whether   a  certain
  5155.                   investment  is likely  to  reach the  monetary  goal in  the
  5156.                   necessary time period.
  5157.  
  5158.  
  5159.  
  5160.  
  5161.  
  5162.  
  5163.  
  5164.                                           72
  5165.  
  5166.  
  5167.  
  5168.  
  5169.  
  5170.  
  5171.  
  5172.  
  5173.         ---------------------------------------------------------------------
  5174.         @DATE                                                        Date/Time
  5175.         ---------------------------------------------------------------------
  5176.         Function  Returns a date number for a date.
  5177.  
  5178.         Syntax    @DATE(year,month,day)
  5179.                   where year, month,  and day are numbers, cell  addresses, or
  5180.                   calculated values.
  5181.  
  5182.         Remarks   This function returns the date  number for year, month,  and
  5183.                   day.  The  date number is  the number of  days from Dec  31,
  5184.                   1899 to the given date.  Formatting a cell containing a date
  5185.                   number using the  /Range Format Date commands  will turn the
  5186.                   number  into a  readable date.    The key  use for  all date
  5187.                   commands is  in date  arithmetic--the determination  of time
  5188.                   between two periods.
  5189.  
  5190.         Example   How many days are between Jan. 16, 1959 and June 10, 1960?
  5191.  
  5192.                   =@DATE(60,6,10)-@DATE(59,1,16) = 511.
  5193.  
  5194.                   What date is 90 days after April 15, 1989?
  5195.  
  5196.                   =@DATE(89,4,15)+90 = 32703
  5197.  
  5198.                   Formatting this value as a date gives July 14, 1989.
  5199.  
  5200.  
  5201.         ---------------------------------------------------------------------
  5202.         @DAY                                                         Date/Time
  5203.         ---------------------------------------------------------------------
  5204.         Function  Returns the day of the month.
  5205.  
  5206.         Syntax    @DAY(date number)
  5207.                   where  date number is a  number, cell address, or calculated
  5208.                   value.
  5209.  
  5210.         Remarks   This function returns the day of the month of date number.
  5211.  
  5212.                   The  @DAY function  is most  often used  to avoid  the often
  5213.                   tedious process of looking up dates; clearly, it is possible
  5214.                   to  simply look  at a cell  that is  formatted as a  date to
  5215.                   discover what  number is  the day that  is contained  there.
  5216.                   Using the @DAY function allows you to bypass the lookup; the
  5217.                   function extracts the day automatically.
  5218.  
  5219.         Example   =@DAY(@DATE(89,1,16)) = 16
  5220.  
  5221.  
  5222.         ---------------------------------------------------------------------
  5223.         @DDB                                                         Financial
  5224.         ---------------------------------------------------------------------
  5225.         Function  Returns the  amount of  depreciation of  an asset using  the
  5226.                   double-declining balance method.
  5227.  
  5228.         Syntax    @DDB(cost,salvage,life,period)
  5229.                   where  cost, salvage,  life, and  period  are numbers,  cell
  5230.  
  5231.  
  5232.                                           73
  5233.  
  5234.  
  5235.  
  5236.  
  5237.  
  5238.  
  5239.  
  5240.  
  5241.                   addresses, or calculated values.
  5242.  
  5243.         Remarks   This  function calculates the  amount of depreciation  of an
  5244.                   asset   using  the   Double-Declining   Balance  method   of
  5245.                   accelerated depreciation.
  5246.  
  5247.                   cost is the cost of the asset, salvage  is the salvage value
  5248.                   of the  asset after it  is totally depreciated, life  is the
  5249.                   useful life  of the asset,  and period is the  period within
  5250.                   that life in which the depreciation is being calculated.
  5251.  
  5252.                   The depreciation for a period is:
  5253.  
  5254.                   (book value * 2) / life
  5255.  
  5256.                   where the book value for a period is:
  5257.  
  5258.                   cost - (total depreciation for all prior periods)
  5259.  
  5260.                   The total depreciation over the life of the asset will never
  5261.                   exceed the assets cost - salvage value.
  5262.  
  5263.  
  5264.  
  5265.  
  5266.  
  5267.  
  5268.  
  5269.  
  5270.  
  5271.  
  5272.  
  5273.  
  5274.  
  5275.  
  5276.  
  5277.  
  5278.  
  5279.  
  5280.  
  5281.  
  5282.  
  5283.  
  5284.  
  5285.  
  5286.  
  5287.  
  5288.  
  5289.  
  5290.  
  5291.  
  5292.  
  5293.  
  5294.  
  5295.  
  5296.  
  5297.  
  5298.  
  5299.  
  5300.                                           74
  5301.  
  5302.  
  5303.  
  5304.  
  5305.  
  5306.  
  5307.  
  5308.  
  5309.         ---------------------------------------------------------------------
  5310.         @DEGREES                                                  Trigonometry
  5311.         ---------------------------------------------------------------------
  5312.         Function  Converts radians to degrees.
  5313.  
  5314.         Syntax    @DEGREES(x)
  5315.                   where x is a number, a cell address, or a calculated value.
  5316.  
  5317.         Remarks   Although all  of InstaCalc's trigonometry  functions operate
  5318.                   on angular values expressed in  radians, it is often  easier
  5319.                   to analyze  angular data  when  expressed in  degrees.   The
  5320.                   @DEGREES function  provides an easy  way to convert  a value
  5321.                   from radians to degrees.
  5322.  
  5323.         Example   If cell A1 were a value in radians, and you wanted its value
  5324.                   in degrees, entering
  5325.  
  5326.                   =@DEGREES(A1)
  5327.  
  5328.                   would return the correct value in degrees.
  5329.  
  5330.                   =@DEGREES(@PI) = 180
  5331.                   =@DEGREES(@PI/2) = 90
  5332.  
  5333.  
  5334.         ---------------------------------------------------------------------
  5335.         @DIR                                                             Macro
  5336.         ---------------------------------------------------------------------
  5337.         Function  Returns the name of the current directory.
  5338.  
  5339.         Syntax    @DIR
  5340.  
  5341.         Remarks   This function returns the name of the current directory.
  5342.  
  5343.                   The  @DIR function  is  used  almost  exclusively  with  #IF
  5344.                   commands  in  applications,  to  test  whether  the  current
  5345.                   directory is the proper directory.
  5346.  
  5347.         Example   #IF @DIR="C:\InstaCalc\FINANCE"
  5348.                     '/fsDATA<Enter>
  5349.                   #ENDIF
  5350.  
  5351.                   will cause an  application to save a file  named DATA.INS if
  5352.                   the current directory is c:\InstaCalc\finance.
  5353.  
  5354.  
  5355.         ---------------------------------------------------------------------
  5356.         @ENVIRON                                                         Macro
  5357.         ---------------------------------------------------------------------
  5358.         Function  Returns the value of an environment variable.
  5359.  
  5360.         Syntax    @ENVIRON(var)
  5361.  
  5362.         Remarks   This  function allows  your applications  to  check the  DOS
  5363.                   environment for variables which may be stored there.
  5364.  
  5365.         Example   =@ENVIRON("COMSPEC") = "C:\COMMAND.COM"
  5366.  
  5367.  
  5368.                                           75
  5369.  
  5370.  
  5371.  
  5372.  
  5373.  
  5374.  
  5375.  
  5376.  
  5377.                   If your path is set to c:\dos;c:\toolbox then
  5378.  
  5379.                   =@ENVIRON("PATH") = "C:\DOS;C:\TOOLBOX"
  5380.  
  5381.  
  5382.  
  5383.         ---------------------------------------------------------------------
  5384.         @ERROR                                                            Data
  5385.         ---------------------------------------------------------------------
  5386.         Function  Returns the value ERROR.
  5387.  
  5388.         Syntax    @ERROR
  5389.  
  5390.         Remarks   This function causes the ERROR flag to appear in the cell in
  5391.                   which it is entered.
  5392.  
  5393.                   The @ERROR function is usually used as an argument in an @IF
  5394.                   function.   Often  it is  used to  flag values  that may  be
  5395.                   outside of a prescribed range.
  5396.  
  5397.         Example   This formula will  multiply B5 by 1.1, unless  B5 is greater
  5398.                   than C5.  If this happens, it will flag you with an ERROR.
  5399.  
  5400.                   =@IF(B5>C5,@ERROR,B5*1.1)
  5401.  
  5402.  
  5403.  
  5404.         ---------------------------------------------------------------------
  5405.         @EXACT                                                          String
  5406.         ---------------------------------------------------------------------
  5407.         Function  Compares two text strings.
  5408.  
  5409.         Syntax    @EXACT(string1,string2)
  5410.                   where  string1 and string2 are strings in quotations or cell
  5411.                   addresses.
  5412.  
  5413.         Remarks   This function  returns  the value  1 (TRUE)  if string1  and
  5414.                   string2 are  identical, or the  value 0 (FALSE) if  they are
  5415.                   not.
  5416.  
  5417.                   Comparing  two strings with the @EXACT function is different
  5418.                   than  comparing them with the =  operator.  Strings compared
  5419.                   with the @EXACT function must be exactly the same for a TRUE
  5420.                   result,  while  strings  compared with  the  =  operator may
  5421.                   differ in case and still be considered equal.
  5422.  
  5423.         Example   If cell D80 contains the string InstaCalc:
  5424.  
  5425.                   =@EXACT("InstaCalc",D80) = 1 (TRUE)
  5426.                   =@EXACT("INSTACALC",D80) = 0 (FALSE)
  5427.  
  5428.  
  5429.  
  5430.  
  5431.  
  5432.  
  5433.  
  5434.  
  5435.  
  5436.                                           76
  5437.  
  5438.  
  5439.  
  5440.  
  5441.  
  5442.  
  5443.  
  5444.  
  5445.         ---------------------------------------------------------------------
  5446.         @EXP                                                      Mathematical
  5447.         ---------------------------------------------------------------------
  5448.         Function  Returns e raised to a power.
  5449.  
  5450.         Syntax    @EXP(x)
  5451.                   where x is a number, a cell address, or a calculated value.
  5452.  
  5453.         Remarks   This function returns  e^x.  e is approximately  2.71828.  x
  5454.                   must be  less than  85.2 or an  overflow will occur  and the
  5455.                   value ERROR will be returned.   This function is the inverse
  5456.                   of  the @LN function.   To use the value  of e in a formula,
  5457.                   use @EXP(1).
  5458.  
  5459.         Example   =@EXP(3) = 20.0855
  5460.                   =@EXP(90) = ERROR
  5461.                   =@EXP(1) = 2.71828
  5462.                   =@EXP(@LN(5)) = 5
  5463.  
  5464.  
  5465.  
  5466.         ---------------------------------------------------------------------
  5467.         @FACT                                                     Mathematical
  5468.         ---------------------------------------------------------------------
  5469.         Function  Returns the factorial of a number.
  5470.  
  5471.         Syntax    @FACT(x)
  5472.                   where x is a number, a cell address, or a calculated value.
  5473.  
  5474.         Remarks   The factorial of x is x * (x-1) * (x-2)...* 1.
  5475.  
  5476.                   x must be between 0 and 30 (inclusive), otherwise @FACT will
  5477.                   overflow and return ERROR.  x should be an integer; if it is
  5478.                   not  an integer,  the  program  will use  the  value of  the
  5479.                   argument rounded to the nearest integer.
  5480.  
  5481.         Example   =@FACT(5) = 5*4*3*2*1 = 120
  5482.                   =@FACT(4.7) = 120
  5483.                   =@FACT(45) = ERROR
  5484.  
  5485.  
  5486.  
  5487.  
  5488.         ---------------------------------------------------------------------
  5489.         @FALSE                                                         Logical
  5490.         ---------------------------------------------------------------------
  5491.         Function  Returns the value FALSE (0).
  5492.  
  5493.         Syntax    @FALSE
  5494.  
  5495.         Remarks   This function returns the value 0 (FALSE).
  5496.  
  5497.                   The primary purpose  of the @FALSE function is  to help make
  5498.                   logical formulas easier to read.
  5499.  
  5500.         Example   @IF(B4>1,@TRUE,@FALSE)=0, if B4 is not greater than 1
  5501.  
  5502.  
  5503.  
  5504.                                           77
  5505.  
  5506.  
  5507.  
  5508.  
  5509.  
  5510.  
  5511.  
  5512.  
  5513.         ---------------------------------------------------------------------
  5514.         @FILE                                                            Macro
  5515.         ---------------------------------------------------------------------
  5516.         Function  Returns various information regarding a file.
  5517.  
  5518.         Syntax    @FILE(filename,attribute)
  5519.                   where  filename and attribute  are strings in  quotations or
  5520.                   cell addresses.
  5521.  
  5522.         Remarks   This  function  returns various  information about  the file
  5523.                   named filename.   Attribute is one of  the following strings
  5524.                   which tells what  information to return: "PATH",  "DATE", or
  5525.                   "EXIST".   filename can be a full path  name, or just a file
  5526.                   name by itself.   If filename is just the name  of the file,
  5527.                   InstaCalc  will look for the file  in the current directory.
  5528.                   @FILE  is intended for  use in application  programs only to
  5529.                   test various characteristics of files your program uses.
  5530.  
  5531.                   "PATH"    returns the full pathname of filename.
  5532.  
  5533.                   "DATE"    returns  a combined date  and time number  for the
  5534.                             date and time that filename was last written to.
  5535.  
  5536.                   "EXIST"   returns TRUE (logical  1) if filename exists,  and
  5537.                             FALSE (logical 0) if it doesn't.
  5538.  
  5539.  
  5540.         ---------------------------------------------------------------------
  5541.         @FIND                                                           String
  5542.         ---------------------------------------------------------------------
  5543.         Function  Finds the occurrence of a string in a longer string.
  5544.  
  5545.         Syntax    @FIND(substring,string,n)
  5546.                   where substring  and string  are strings  in quotations,  or
  5547.                   cell  addresses,  and  n  is  a  number,  cell  address,  or
  5548.                   calculated value.
  5549.  
  5550.         Remarks   substring is the  part of  a string to  find, string is  the
  5551.                   longer  string  in  which  to  find  the  substring,  and  n
  5552.                   designates where in the string to begin looking.  The search
  5553.                   is case-sensitive.
  5554.  
  5555.                   @FIND  returns the  position in  string  where substring  is
  5556.                   found.  That  is, if substring begins at  the 20th character
  5557.                   string, 20 will  be returned.  If  no match is found,  @FIND
  5558.                   returns a value of 0.
  5559.  
  5560.         Example   To find the  word "time" in the phrase, "Now is the time for
  5561.                   all good men to come to the aid of their country,":
  5562.  
  5563.                   If the longer string is entered in cell D2, then
  5564.  
  5565.                   =@FIND("time",D2,1) = 12
  5566.  
  5567.                   You can  also search for  the second occurrence of  "the" in
  5568.                   the above phrase with
  5569.  
  5570.  
  5571.  
  5572.                                           78
  5573.  
  5574.  
  5575.  
  5576.  
  5577.  
  5578.  
  5579.  
  5580.  
  5581.                   =@FIND("the",D2,15)
  5582.  
  5583.                   InstaCalc will begin the  search at the 15th character,  and
  5584.                   will return the position, 45.
  5585.  
  5586.  
  5587.  
  5588.         ---------------------------------------------------------------------
  5589.         @FNAME                                                           Macro
  5590.         ---------------------------------------------------------------------
  5591.         Function  Returns the name of the file currently in memory.
  5592.  
  5593.         Syntax    @FNAME
  5594.  
  5595.         Remarks   The  @FNAME function returns the name  of the file currently
  5596.                   being worked on.
  5597.  
  5598.                   The @FNAME function is typically used in macros to determine
  5599.                   the current file name without user intervention.
  5600.  
  5601.  
  5602.         ---------------------------------------------------------------------
  5603.         @FORMAT                                                         String
  5604.         ---------------------------------------------------------------------
  5605.         Function  Converts a number to a string using a selected format.
  5606.  
  5607.         Syntax    @FORMAT(x,form,dp)
  5608.                   where  x,  form,  and  dp are  numbers,  cell  addresses, or
  5609.                   calculated values.
  5610.  
  5611.         Remarks   This function converts a number to a string using the format
  5612.                   form and dp decimal places.  @FORMAT is especially useful in
  5613.                   applications  where you  want  to print  out values  using a
  5614.                   specific format such as currency.
  5615.  
  5616.                   form FORMAT
  5617.                   0    Default
  5618.                   1    Fixed
  5619.                   2    Currency
  5620.                   3    Percent
  5621.                   4    Scientific
  5622.                   5    Hidden
  5623.                   6    Text
  5624.                   7    Fixed with commas
  5625.                   8    Currency with commas
  5626.                   9    Percent with commas
  5627.                   10   dd-mmm-yy
  5628.                   11   dd-mmm
  5629.                   12   mmm-yy
  5630.                   13   mm/dd/yy
  5631.                   14   Month DD, YYYY
  5632.                   15   HH:MM AM/PM
  5633.                   16   HH:MM Military
  5634.                   17   General
  5635.                                    
  5636.  
  5637.         Example   =@FORMAT(1234.567,8,2) = $1,234.57
  5638.  
  5639.  
  5640.                                           79
  5641.  
  5642.  
  5643.  
  5644.  
  5645.  
  5646.  
  5647.  
  5648.  
  5649.                   =@FORMAT(0.12345,3,2) = 12.35%
  5650.                   =@FORMAT(33000,14,0) = May 7, 1990
  5651.  
  5652.  
  5653.  
  5654.         ---------------------------------------------------------------------
  5655.         @FRAC                                                     Mathematical
  5656.         ---------------------------------------------------------------------
  5657.         Function  Returns the fractional part of a number.
  5658.  
  5659.         Syntax    @FRAC(x)
  5660.                   where x is a number, a cell address, or a calculated value.
  5661.  
  5662.         Remarks   This function returns  only the part of x  which comes after
  5663.                   the  decimal  point.   If  x  is  negative, then  the  value
  5664.                   returned by @FRAC will be negative also.
  5665.  
  5666.         Example   =@FRAC(1.23) = 0.23
  5667.                   =@FRAC(-1.23) = -0.23
  5668.                   =@FRAC(@PI) = 0.14159
  5669.  
  5670.  
  5671.         ---------------------------------------------------------------------
  5672.         @FV                                                          Financial
  5673.         ---------------------------------------------------------------------
  5674.         Function  Returns the future value of an annuity.
  5675.  
  5676.         Syntax    @FV(pmt,int,term)
  5677.                   where  pmt,  int,  term  are  numbers,  cell  addresses,  or
  5678.                   calculated values.
  5679.  
  5680.         Remarks   This function calculates the future value of an annuity.
  5681.  
  5682.                   pmt is the amount of payment per  period in the annuity, int
  5683.                   is  the discount  rate per  period,  and term  is the  total
  5684.                   number of payments to be made.
  5685.  
  5686.                   @FV  assumes that payments are being made  at the end of the
  5687.                   period.  If payments are due at the beginning of the period,
  5688.                   simply multiply the answer by (1+int).
  5689.  
  5690.                   IMPORTANT: The interest rate must be a per period rate.  For
  5691.                   example, if the  term is 240, indicating  (probably) monthly
  5692.                   payments over twenty years, the interest rate must also be a
  5693.                   monthly rate.  Thus,  a 12% yearly rate would be  entered as
  5694.                   1%.
  5695.  
  5696.         Example   To calculate  the future  value of  an  ordinary annuity  in
  5697.                   which the payments  are $500.00, made monthly  for 20 years,
  5698.                   and the yearly interest rate is 10%:
  5699.  
  5700.                   =@FV(500,0.1/12,240) = 379,684.42
  5701.  
  5702.                   =@FV(500,0.1/12,240)*(1+0.1/12) = 382,848.45
  5703.  
  5704.  
  5705.  
  5706.  
  5707.  
  5708.                                           80
  5709.  
  5710.  
  5711.  
  5712.  
  5713.  
  5714.  
  5715.  
  5716.  
  5717.         ---------------------------------------------------------------------
  5718.         @GLOBAL                                                           Data
  5719.         ---------------------------------------------------------------------
  5720.         Function  Returns information about the current Worksheet.
  5721.  
  5722.         Syntax    @GLOBAL(attribute)
  5723.  
  5724.         Remarks   This function  returns global information about  the current
  5725.                   worksheet.  Attribute is one  of the following strings which
  5726.                   tells  what  information  to  return:  "prefix",  "protect",
  5727.                   "width", "format","calc",  "insert", or "enter".  @GLOBAL is
  5728.                   intended for  use in  application programs  to test  various
  5729.                   characteristics of the current worksheet.
  5730.  
  5731.                   attribute      @GLOBAL returns
  5732.  
  5733.                   "prefix"       the global justification character
  5734.                                  ' if left justified
  5735.                                  " if right justified
  5736.                                  ^ if centered
  5737.  
  5738.                   "protect"      the Worksheet protection
  5739.                                  0 = Disabled, 1 = Enabled
  5740.  
  5741.                   "width"        the global column width
  5742.  
  5743.                   "format"       the global format
  5744.                                  0 Default
  5745.                                  1 Fixed
  5746.                                  2 Currency
  5747.                                  3 Percent
  5748.                                  4 Scientific
  5749.                                  5 Hidden
  5750.                                  6 Text
  5751.                                  7 Fixed with commas
  5752.                                  8 Currency with commas
  5753.                                  9 Percent with commas
  5754.                                  10 dd-mmm-yy
  5755.                                  11 dd-mmm
  5756.                                  12 mmm-yy
  5757.                                  13 mm/dd/yy
  5758.                                  14 Month DD, YYYY
  5759.                                  15 HH:MM AM/PM
  5760.                                  16 HH:MM Military
  5761.                                  17 General
  5762.  
  5763.  
  5764.                   "calc"         the recalculation mode
  5765.                                  0 = Manual, 1 = Automatic
  5766.  
  5767.                   "insert"       the status of insert mode
  5768.                                  0 = Off, 1 = On
  5769.  
  5770.                   "enter"        the status of <Ctrl><F9> Enter mode
  5771.                                  0 = Off, 1 = On
  5772.  
  5773.  
  5774.  
  5775.  
  5776.                                           81
  5777.  
  5778.  
  5779.  
  5780.  
  5781.  
  5782.  
  5783.  
  5784.  
  5785.         ---------------------------------------------------------------------
  5786.         @HLOOKUP                                                          Data
  5787.         ---------------------------------------------------------------------
  5788.         Function  Looks up an item in a horizontal lookup table.
  5789.  
  5790.         Syntax    @HLOOKUP(x,range,row offset)
  5791.                   where range  is a  range of cells,  named or  otherwise; row
  5792.                   offset is a number, cell address, or calculated value; and x
  5793.                   is a number, text, cell address, or calculated value.
  5794.  
  5795.         Remarks   This function looks up and retrieves  a value or text from a
  5796.                   horizontal lookup table.  range  is the range of cells which
  5797.                   makes up the lookup table.
  5798.  
  5799.                   If x is  text, @HLOOKUP will compare x with each cell in the
  5800.                   top  row of range,  and if a  match is found,  will move row
  5801.                   offset rows from that cell, and will return the value in the
  5802.                   resulting cell.  If x does not match any of the cells in the
  5803.                   top row of range, then @HLOOKUP will return the value ERROR.
  5804.  
  5805.                   If x  is a  value instead of  text, @HLOOKUP will  compare x
  5806.                   with each cell in the top row of range until it finds a cell
  5807.                   which is greater  than or equal to  x.  This means  that the
  5808.                   values in  the top row  of range must be  in ascending order
  5809.                   for @HLOOKUP to work correctly.  If the value in the cell is
  5810.                   equal to x, @HLOOKUP will consider it  a match.  If the cell
  5811.                   is greater than  x, @HLOOKUP will move back  to the previous
  5812.                   cell and consider it a match.  For example, if the values in
  5813.                   the top row  of range are  100, 200, 300,  and 400, and  the
  5814.                   value  of x  is  250,  then @HLOOKUP  will  search until  it
  5815.                   reaches  300, and  will  then  move back  and  use the  cell
  5816.                   containing  200  as the  match.    When  a match  is  found,
  5817.                   @HLOOKUP will move row offset  rows from that cell, and will
  5818.                   return the value  in the resulting  cell.   If x is  smaller
  5819.                   than the first cell in the top row, @HLOOKUP will return the
  5820.                   value ERROR.
  5821.  
  5822.  
  5823.  
  5824.  
  5825.  
  5826.  
  5827.  
  5828.  
  5829.  
  5830.  
  5831.  
  5832.  
  5833.  
  5834.  
  5835.  
  5836.  
  5837.  
  5838.  
  5839.  
  5840.  
  5841.  
  5842.  
  5843.  
  5844.                                           82
  5845.  
  5846.  
  5847.  
  5848.  
  5849.  
  5850.  
  5851.  
  5852.  
  5853.         ---------------------------------------------------------------------
  5854.         @HOUR                                                        Date/Time
  5855.         ---------------------------------------------------------------------
  5856.         Function  Returns the hour of a time number.
  5857.  
  5858.         Syntax    @HOUR(time number)
  5859.                   where time number  is a number, cell address,  or calculated
  5860.                   value.
  5861.  
  5862.         Remarks   This function returns  the hour of time number.  A result of
  5863.                   0  represents midnight,  1  represents  1:00  p.m.,  and  23
  5864.                   represents 11:00 p.m.
  5865.  
  5866.                   time number should be  a value between  0 and 1.   InstaCalc
  5867.                   will  not ignore  a mixed  number;  it will  simply use  the
  5868.                   fractional part.
  5869.  
  5870.                   The @HOUR  function is most  often used in  conjunction with
  5871.                   other  date  and  time  functions to  return  only  the hour
  5872.                   portion of a previously entered value.  
  5873.  
  5874.         Example   =@HOUR(@NOW) = the current hour (in military time)
  5875.                   =@HOUR(@TIME(13,40,55)) = 13
  5876.  
  5877.  
  5878.  
  5879.         ---------------------------------------------------------------------
  5880.         @IF                                                            Logical
  5881.         ---------------------------------------------------------------------
  5882.         Function  Returns one of two values depending on a condition.
  5883.  
  5884.         Syntax    @IF(condition,x,y)
  5885.                   where condition  is a  conditional statement,  often in  the
  5886.                   form of an equation,  other times in the form of  a "greater
  5887.                   than" or "less  than" statement (or other inequality); and x
  5888.                   and y are values, functions, or strings.
  5889.  
  5890.         Remarks   This functions evaluates  condition and returns  x if it  is
  5891.                   TRUE, and y if it is FALSE.
  5892.  
  5893.                   @IF is one of the most powerful InstaCalc functions.  It not
  5894.                   only evaluates  whether a  condition exists,  it also  takes
  5895.                   action  depending on the  existence or non-existence  of the
  5896.                   condition.   More importantly, conditions can be built which
  5897.                   are  very complex, and may incorporate the Boolean operators
  5898.                   (&, |, and ~) in addition to the logical  operators.  Nested
  5899.                   @IF functions are allowed.
  5900.  
  5901.                   x and y may be both numeric, both text, or one of each.
  5902.  
  5903.  
  5904.  
  5905.  
  5906.  
  5907.  
  5908.  
  5909.  
  5910.  
  5911.  
  5912.                                           83
  5913.  
  5914.  
  5915.  
  5916.  
  5917.  
  5918.  
  5919.  
  5920.  
  5921.         ---------------------------------------------------------------------
  5922.         @INDEX                                                            Data
  5923.         ---------------------------------------------------------------------
  5924.         Function  Looks up data in a array.
  5925.  
  5926.         Syntax    @INDEX(range,col,row)
  5927.                   where range is a range of cells, named or otherwise; and col
  5928.                   and row are numbers, cell addresses, or calculated values.
  5929.  
  5930.         Remarks   This function  looks  up and  returns  data from  an  array.
  5931.                   range is the array, and col and row are the offsets into the
  5932.                   array.  The top row of  range has a row offset of 0  and the
  5933.                   left column of range has a column offset of 0.
  5934.  
  5935.  
  5936.  
  5937.         ---------------------------------------------------------------------
  5938.         @INT                                                      Mathematical
  5939.         ---------------------------------------------------------------------
  5940.         Function  Returns the integer part of a number.
  5941.  
  5942.         Syntax    @INT(x)
  5943.                   where x is a number, a cell address, or a calculated value.
  5944.  
  5945.         Remarks   This function returns the integer  part of a value, which is
  5946.                   the part of the argument which is  to the left (in front of)
  5947.                   the decimal point.   The sign of the  value returned is  the
  5948.                   same as that of the argument.
  5949.  
  5950.                   The   @INT  function  does  not  round  values  for  further
  5951.                   calculation.   (To round  numbers, use  @ROUND.)   It merely
  5952.                   truncates the numbers; only the integer part of the value is
  5953.                   used in further calculations.  The  sign of the value can be
  5954.                   either positive or negative.  
  5955.  
  5956.         Example   =@INT(-2.34) = -2
  5957.                   =@INT(1.2) = 1
  5958.                   =@INT(1.99) = 1
  5959.                   =@INT(@PI) = 3
  5960.  
  5961.  
  5962.  
  5963.         ---------------------------------------------------------------------
  5964.         @IRR                                                         Financial
  5965.         ---------------------------------------------------------------------
  5966.         Function  Returns  the internal  rate of  return of  a series  of cash
  5967.         flows.
  5968.  
  5969.         Syntax    @IRR(estimate,range)
  5970.                   where  estimate is  a number,  cell  address, or  calculated
  5971.                   value; and range is a range of cells, named or otherwise.
  5972.  
  5973.         Remarks   This  function calculates  the discount  rate  at which  the
  5974.                   present value of  an outlay (investment) equals  the present
  5975.                   value  of  cash  inflows  stemming  (presumably)  from  that
  5976.                   investment.  Another  way of saying this  is that it is  the
  5977.                   discount rate at which the  net present value of outlays and
  5978.  
  5979.  
  5980.                                           84
  5981.  
  5982.  
  5983.  
  5984.  
  5985.  
  5986.  
  5987.  
  5988.  
  5989.                   inflows is zero.
  5990.  
  5991.                   estimate should be a value between 0 and 1 that represents a
  5992.                   reasonable guess at  the rate of return  for the investment,
  5993.                   and range  is a  range of  cells that  contain the net  cash
  5994.                   flows resulting from the investment.  The first value in the
  5995.                   range  must be negative,  indicating an investment  was made
  5996.                   which constituted an outflow of moneys.
  5997.  
  5998.                   It is assumed that the cash  flows that appear in the  range
  5999.                   are received at  regular intervals.  They need  not be even,
  6000.                   but they should at least approximate regular flows.  
  6001.  
  6002.                   The @IRR function further  assumes that the income  from the
  6003.                   investment is reinvested at the rate of return.  If this not
  6004.                   the  case (as with a capital investment in plant equipment),
  6005.                   @IRR  will be  overstated.    The  amount  of  overstatement
  6006.                   depends on  the disparity  between the assumed  reinvestment
  6007.                   and the actual rate of reinvestment.
  6008.  
  6009.                   Finally, since  @IRR is  calculated by  iteration, a  really
  6010.                   poor  estimate  may  cause  the  function  to  misstate  the
  6011.                   discount rate.
  6012.  
  6013.  
  6014.  
  6015.         ---------------------------------------------------------------------
  6016.         @ISERR                                                         Logical
  6017.         ---------------------------------------------------------------------
  6018.         Function  Tests whether an item is an error.
  6019.  
  6020.         Syntax    @ISERR(x)
  6021.                   where x is a cell reference or a formula.
  6022.  
  6023.         Remarks   This function  is used to  determine whether x is  the value
  6024.                   ERROR.   @ISERR is used  to stop ERROR values  from carrying
  6025.                   through to other parts of the worksheet.
  6026.  
  6027.         Example   @ISERR(1/0) = 1 (TRUE)
  6028.  
  6029.                   @ISERR(A1)  =  1  if  cell  A1  contains  the  value  ERROR;
  6030.                   otherwise it equals 0.
  6031.  
  6032.  
  6033.         ---------------------------------------------------------------------
  6034.         @ISNUM                                                         Logical
  6035.         ---------------------------------------------------------------------
  6036.         Function  Tests whether an item is a number.
  6037.  
  6038.         Syntax    @ISNUM(x)
  6039.                   where x is a cell address or a formula.
  6040.  
  6041.         Remarks   This function returns the value 1 (TRUE) if x is a numerical
  6042.                   value; otherwise it returns the value 0 (FALSE).
  6043.  
  6044.         Example   @ISNUM(1) = 1 (TRUE)
  6045.  
  6046.  
  6047.  
  6048.                                           85
  6049.  
  6050.  
  6051.  
  6052.  
  6053.  
  6054.  
  6055.  
  6056.  
  6057.                   @ISNUM("text") = 0 (FALSE)
  6058.  
  6059.                   @ISNUM(A1)  =  1  if  cell  A1  contains  a  numeric  value;
  6060.                   otherwise it equals 0.
  6061.  
  6062.  
  6063.         ---------------------------------------------------------------------
  6064.         @ISTEXT                                                        Logical
  6065.         ---------------------------------------------------------------------
  6066.         Function  Tests whether an item is text.
  6067.  
  6068.         Syntax    @ISTEXT(x)
  6069.                   where x is a cell address or a formula.
  6070.  
  6071.         Remarks   This function returns the value  1 (TRUE) if x is  a textual
  6072.                   value; otherwise it returns the value 0 (FALSE).
  6073.  
  6074.         Example   @ISTEXT(1) = 0 (FALSE)
  6075.  
  6076.                   @ISTEXT("text") = 1 (TRUE)
  6077.  
  6078.                   @ISTEXT(A1)  =  1  if  cell A1  contains  a  textual  value;
  6079.                   otherwise it equals 0.
  6080.  
  6081.  
  6082.  
  6083.         ---------------------------------------------------------------------
  6084.         @LEFT                                                           String
  6085.         ---------------------------------------------------------------------
  6086.         Function  Returns the left part of a text string.
  6087.  
  6088.         Syntax    @LEFT(string,n)
  6089.                   where string is  a string in quotations, or  a cell address;
  6090.                   and n is a number, cell address, or calculated value.
  6091.  
  6092.         Remarks   This function returns the leftmost n characters from string.
  6093.  
  6094.                   @LEFT is  often used when extracting portions  of a string--
  6095.                   for example, an  area code or the first digits  of a billing
  6096.                   code.
  6097.  
  6098.  
  6099.         ---------------------------------------------------------------------
  6100.         @LEN                                                            String
  6101.         ---------------------------------------------------------------------
  6102.         Function  Returns the length of a text string.
  6103.  
  6104.         Syntax    @LEN(string)
  6105.                   where string is a string in quotations, or a cell address.
  6106.  
  6107.         Remarks   This function returns the number of characters in string.
  6108.  
  6109.         Example   If cell A5  contains 'Goodbye and B9 contains  ' cruel world
  6110.                   then
  6111.  
  6112.                   =@LEN(A5) = 7
  6113.                   =@LEN(B9) = 12
  6114.  
  6115.  
  6116.                                           86
  6117.  
  6118.  
  6119.  
  6120.  
  6121.  
  6122.  
  6123.  
  6124.  
  6125.                   =@LEN(A5+B9) = 19
  6126.  
  6127.  
  6128.  
  6129.         ---------------------------------------------------------------------
  6130.         @LN                                                       Mathematical
  6131.         ---------------------------------------------------------------------
  6132.         Function  Returns the natural logarithm of a number.
  6133.  
  6134.         Syntax    @LN(x)
  6135.                   where x is a number, a cell address, or a calculated value.
  6136.  
  6137.         Remarks   This function calculates  the natural logarithm (base  e) of
  6138.                   x.   It is  the inverse  of the  @EXP function.   The  value
  6139.                   cannot be  negative or equal to zero, or an ERROR value will
  6140.                   be returned.
  6141.  
  6142.         Example   =@LN(1000) = 6.9078
  6143.  
  6144.                   =@LN(@EXP(3)) = 3   since  @LN is  the inverse  of the  @EXP
  6145.                                       function.
  6146.  
  6147.  
  6148.  
  6149.         ---------------------------------------------------------------------
  6150.         @LOG                                                      Mathematical
  6151.         ---------------------------------------------------------------------
  6152.         Function  Returns the common logarithm of a number.
  6153.  
  6154.         Syntax    @LOG(x)
  6155.                   where x is a number, a cell address, or a calculated value.
  6156.  
  6157.  
  6158.         Remarks   The @LOG function returns  the logarithm of x.  It  uses the
  6159.                   base 10, and is the reciprocal of exponentiation.  The value
  6160.                   must be greater than zero;  a negative or zero value returns
  6161.                   an ERROR value.
  6162.  
  6163.         Example   =@LOG(1000) = 3
  6164.                   =@LOG(10^5) = 5
  6165.                   =@LOG(-12) = ERROR
  6166.  
  6167.  
  6168.  
  6169.  
  6170.  
  6171.  
  6172.  
  6173.  
  6174.  
  6175.  
  6176.  
  6177.  
  6178.  
  6179.  
  6180.  
  6181.  
  6182.  
  6183.  
  6184.                                           87
  6185.  
  6186.  
  6187.  
  6188.  
  6189.  
  6190.  
  6191.  
  6192.  
  6193.         ---------------------------------------------------------------------
  6194.         @LOGB                                                     Mathematical
  6195.         ---------------------------------------------------------------------
  6196.         Function  Returns the logarithm (base b) of a number.
  6197.  
  6198.         Syntax    @LOGB(x,b)
  6199.                   where x  and b  are numbers, cell  addresses, or  calculated
  6200.                   values.
  6201.  
  6202.         Remarks   This function  calculates the logarithm  of x.  It  uses the
  6203.                   base b, and is the reciprocal  of exponentiation.  x must be
  6204.                   greater than  zero, otherwise  @LOGB will  return the  value
  6205.                   ERROR.
  6206.  
  6207.         Example   =@LOGB(1000,17) = 2.438134
  6208.                   =@LOGB(17^5,17) = 5
  6209.                   =@LOGB(-12,3) = ERROR
  6210.  
  6211.  
  6212.         ---------------------------------------------------------------------
  6213.         @LOWER                                                          String
  6214.         ---------------------------------------------------------------------
  6215.         Function  Converts all the characters of a text string to lowercase.
  6216.  
  6217.         Syntax    @LOWER(string)
  6218.                   where string is a string in quotations, or a cell address.
  6219.  
  6220.         Remarks   The @LOWER function converts all of the characters in string
  6221.                   to lowercase letters.
  6222.  
  6223.         Example   If A1 contains the text "Instruction Manual", then
  6224.  
  6225.                   =@LOWER(A1) = instruction manual
  6226.  
  6227.  
  6228.  
  6229.         ---------------------------------------------------------------------
  6230.         @MAX                                                       Statistical
  6231.         ---------------------------------------------------------------------
  6232.         Function  Returns the maximum value from a list of values.
  6233.  
  6234.         Syntax    @MAX(list)
  6235.                   where list  is a  list of values  separated by commas,  or a
  6236.                   range containing values, or some combination of the two.
  6237.  
  6238.         Remarks   This function returns the largest value in list.  When lists
  6239.                   become very  large, it becomes useful to  easily and quickly
  6240.                   determine the largest value in  the list.  The @MAX function
  6241.                   accommodates this need.  Blank and text cells are ignored by
  6242.                   @MAX.   If the  list consists entirely  of blank  cells, the
  6243.                   value ERROR will be returned, because you can't  determine a
  6244.                   maximum of no values.
  6245.  
  6246.         Example   =@MAX(0,1,2,3,4,5,6,7,8,9)  = 9
  6247.  
  6248.  
  6249.  
  6250.  
  6251.  
  6252.                                           88
  6253.  
  6254.  
  6255.  
  6256.  
  6257.  
  6258.  
  6259.  
  6260.  
  6261.         ---------------------------------------------------------------------
  6262.         @MEMORY                                                          Macro
  6263.         ---------------------------------------------------------------------
  6264.         Function  Returns the amount of memory available.
  6265.  
  6266.         Syntax    @MEMORY
  6267.  
  6268.         Remarks   This   function  returns  the  number  of  bytes  of  memory
  6269.                   available.
  6270.  
  6271.  
  6272.  
  6273.         ---------------------------------------------------------------------
  6274.         @MID                                                            String
  6275.         ---------------------------------------------------------------------
  6276.         Function  Returns the midsection of a text string.
  6277.  
  6278.         Syntax    @MID(string,start,n)
  6279.                   where string is  a string in quotations, or  a cell address;
  6280.                   and start  and n are numbers, cell  addresses, or calculated
  6281.                   values. 
  6282.  
  6283.         Remarks   This function  searches  string,  starting  with  the  start
  6284.                   character, and extracts and returns n characters.
  6285.  
  6286.  
  6287.         ---------------------------------------------------------------------
  6288.         @MIN                                                       Statistical
  6289.         ---------------------------------------------------------------------
  6290.         Function  Returns the minimum value from a list of values.
  6291.  
  6292.         Syntax    @MIN(list)
  6293.                   where list  is a list  of values  separated by commas,  or a
  6294.                   range containing values, or some combination of the two.
  6295.  
  6296.         Remarks   This  function returns  the smallest  value in  list.   When
  6297.                   lists  become very large,  it becomes  useful to  easily and
  6298.                   quickly determine the smallest value  in the list.  The @MIN
  6299.                   function accommodates this need.   Blank and text cells  are
  6300.                   ignored.  If the list  consists entirely of blank cells, the
  6301.                   value ERROR will be returned because you can't determine the
  6302.                   minimum of no values.
  6303.  
  6304.         Example   =@MIN(0,1,2,3,4,5,6,7,8,9)  = 0
  6305.  
  6306.                   If  cells  A1  to  A10  contained those  values,  but  in  a
  6307.                   different order,  the  formula =@MIN(A1..A10)   would  still
  6308.                   return the value 0.
  6309.  
  6310.  
  6311.  
  6312.         ---------------------------------------------------------------------
  6313.         @MINUTE                                                      Date/Time
  6314.         ---------------------------------------------------------------------
  6315.         Function  Returns the minute of a time number.
  6316.  
  6317.         Syntax    @MINUTE(time number)
  6318.  
  6319.  
  6320.                                           89
  6321.  
  6322.  
  6323.  
  6324.  
  6325.  
  6326.  
  6327.  
  6328.  
  6329.                   where time number is a  number, cell address, or  calculated
  6330.                   value.
  6331.  
  6332.         Remarks   This function  returns the number  of the minute  (between 0
  6333.                   and 59) represented by time number.
  6334.  
  6335.                   time  number  should  be  a  value  between  0  and  1  (not
  6336.                   inclusive).    InstaCalc  will  not  ignore  mixed  numbers;
  6337.                   rather, it will extract only the fractional part.
  6338.  
  6339.                   @MINUTE is most often useful in conjunction with other  date
  6340.                   and time  functions.  @MINUTE  will extract only  the minute
  6341.                   portion of a time value.
  6342.  
  6343.         Example   To find the current minute, and enter it into a cell, enter:
  6344.  
  6345.                   =@MINUTE(@NOW)
  6346.                   =@MINUTE(@TIME(10,20,30)) = 20
  6347.  
  6348.  
  6349.         ---------------------------------------------------------------------
  6350.         @MOD                                                      Mathematical
  6351.         ---------------------------------------------------------------------
  6352.         Function  Returns the remainder after dividing two numbers.
  6353.  
  6354.         Syntax    @MOD(x,y)
  6355.                   where x  and y  are numbers,  cell addresses,  or calculated
  6356.                   values.
  6357.  
  6358.         Remarks   This function returns the remainder after dividing x by y.
  6359.  
  6360.                   @MOD function  will typically  be used any  time that  it is
  6361.                   necessary to use the remainder in calculations.  @MOD can be
  6362.                   used to determine if x is odd or even by setting y to 2.  If
  6363.                   the result is 0, then x is even; if the  result is 1, then x
  6364.                   is odd.   If y  has a value  of 0, ERROR  will be  returned,
  6365.                   since dividing by 0 is illegal.
  6366.  
  6367.         Example   =@MOD(5,2) = 1
  6368.                   =@MOD(6,2) = 0
  6369.                   =@MOD(12,7) = 5
  6370.  
  6371.  
  6372.         ---------------------------------------------------------------------
  6373.         @MONTH                                                       Date/Time
  6374.         ---------------------------------------------------------------------
  6375.         Function  Returns the month of a date number.
  6376.  
  6377.         Syntax    @MONTH(date number)
  6378.                   where date number is  a number, cell address,  or calculated
  6379.                   value.
  6380.  
  6381.         Remarks   This function returns only the month portion (1..12) of date
  6382.                   number.
  6383.  
  6384.                   Most often, the @MONTH function is used in conjunction  with
  6385.                   other date function.   @MONTH extracts the month portion  of
  6386.  
  6387.  
  6388.                                           90
  6389.  
  6390.  
  6391.  
  6392.  
  6393.  
  6394.  
  6395.  
  6396.  
  6397.                   the date given in its argument.
  6398.  
  6399.         Example   If the current month is April, then
  6400.  
  6401.                   =@MONTH(@NOW) = 4
  6402.  
  6403.                   =@MONTH(@DATE(89,11,3)) = 11
  6404.  
  6405.  
  6406.  
  6407.         ---------------------------------------------------------------------
  6408.         @NMONTH                                                      Date/Time
  6409.         ---------------------------------------------------------------------
  6410.         Function  Returns the name of a month.
  6411.  
  6412.         Syntax    @NMONTH(x)
  6413.                   where x is a number, cell address, or calculated value.
  6414.  
  6415.         Remarks   The @NMONTH function returns the name of month x.
  6416.  
  6417.                   @NMONTH  is  often  used  in  conjunction  with  the  @MONTH
  6418.                   function to return the month name of a date number.
  6419.  
  6420.         Example   If A1  contains the date  number 32524 (the date  number for
  6421.                   1/16/89), then
  6422.  
  6423.                   =@NMONTH(@MONTH(A1)) = January
  6424.  
  6425.                   If the current month is October, then
  6426.  
  6427.                   =@NMONTH(@MONTH(@NOW)) = October
  6428.  
  6429.  
  6430.  
  6431.  
  6432.  
  6433.  
  6434.  
  6435.  
  6436.  
  6437.  
  6438.  
  6439.  
  6440.  
  6441.  
  6442.  
  6443.  
  6444.  
  6445.  
  6446.  
  6447.  
  6448.  
  6449.  
  6450.  
  6451.  
  6452.  
  6453.  
  6454.  
  6455.  
  6456.                                           91
  6457.  
  6458.  
  6459.  
  6460.  
  6461.  
  6462.  
  6463.  
  6464.  
  6465.         ---------------------------------------------------------------------
  6466.         @NOW                                                         Date/Time
  6467.         ---------------------------------------------------------------------
  6468.         Function  Returns the current date and time numbers.
  6469.  
  6470.         Syntax    @NOW
  6471.  
  6472.         Remarks   This function reads  the system clock and returns a combined
  6473.                   date and  time number for  the current date  and time.   The
  6474.                   integer part of the result will  be the date number for  the
  6475.                   current date, and the fractional  part of the result will be
  6476.                   the time number for the current time.
  6477.  
  6478.  
  6479.         ---------------------------------------------------------------------
  6480.         @NPV                                                         Financial
  6481.         ---------------------------------------------------------------------
  6482.         Function  Returns the  net present  value of a  series of  future cash
  6483.         flows.
  6484.  
  6485.         Syntax    @NPV(int,range)
  6486.                   where  int is  a number,  a  cell address,  or a  calculated
  6487.                   value, and range is a range of cells, named or otherwise.
  6488.  
  6489.         Remarks   This function calculates  the net present value of  a series
  6490.                   of future cash flows in  range, given the discount rate int.
  6491.                   Each  of the  future  cash  flows are  brought  back to  the
  6492.                   present;  that is, each flow receives its equivalent present
  6493.                   value.
  6494.  
  6495.                   The period of the discount must agree with the period of the
  6496.                   cash flows.   That is, if the  cash flows are  yearly flows,
  6497.                   then the  discount rate must be  a yearly rate; if  the cash
  6498.                   flows are monthly,  then the discount rate must  be monthly.
  6499.                   Generally, yearly cash  flows will be accurate enough.  Even
  6500.                   if the  flows actually come  on a monthly basis,  summing up
  6501.                   those flows into  a single yearly flow will  only change the
  6502.                   answer by a small percentage.
  6503.  
  6504.                   @NPV assumes that the period between cash flows is constant.
  6505.                   @NPV  assumes  end-of-period-payments.    For  beginning-of-
  6506.                   period-payments, multiply the answer by (1+int).
  6507.  
  6508.  
  6509.  
  6510.         ---------------------------------------------------------------------
  6511.         @PI                                                       Trigonometry
  6512.         ---------------------------------------------------------------------
  6513.         Function  Returns the value of pi (3.14159...).
  6514.  
  6515.         Syntax    @PI
  6516.  
  6517.         Remarks   The  @PI   function  simply   returns  the   value  of   pi,
  6518.                   3.141592635...
  6519.  
  6520.         Example   Entering the formula 2*@PI*5.3 returns the circumference  of
  6521.                   a circle with a radius of 5.3, or 33.30088.
  6522.  
  6523.  
  6524.                                           92
  6525.  
  6526.  
  6527.  
  6528.  
  6529.  
  6530.  
  6531.  
  6532.  
  6533.  
  6534.  
  6535.         ---------------------------------------------------------------------
  6536.         @PMT                                                         Financial
  6537.         ---------------------------------------------------------------------
  6538.         Function  Returns the payment required to amortize a loan amount.
  6539.  
  6540.         Syntax    @PMT(prin,int,term)
  6541.                   where prin,  int, and term  are numbers, cell  addresses, or
  6542.                   calculated values.
  6543.  
  6544.         Remarks   This  function calculates the  periodic payment  required to
  6545.                   amortize a loan  amount, given the amount  of principal, the
  6546.                   periodic interest rate, and the number of payments.
  6547.  
  6548.                   prin is the  total amount of principal, int  is the periodic
  6549.                   interest rate,  and term  is the number  of payments  in the
  6550.                   loan.
  6551.  
  6552.                   The @PMT function assumes a fixed rate of interest.  It also
  6553.                   requires  (like all  of the  financial  functions) that  the
  6554.                   interest  and term  in the  argument are  expressed in  like
  6555.                   intervals;  that is,  a  monthly  term  requires  a  monthly
  6556.                   interest rate.
  6557.  
  6558.         Example   If you were looking at  a home that would require  a $75,000
  6559.                   loan,  at 10%  yearly  interest for  30  years (360  monthly
  6560.                   payments), how much would your monthly payment be?
  6561.  
  6562.                   =@PMT(75000,0.1/12,360) = $658.18.
  6563.  
  6564.  
  6565.  
  6566.  
  6567.  
  6568.  
  6569.  
  6570.  
  6571.  
  6572.  
  6573.  
  6574.  
  6575.  
  6576.  
  6577.  
  6578.  
  6579.  
  6580.  
  6581.  
  6582.  
  6583.  
  6584.  
  6585.  
  6586.  
  6587.  
  6588.  
  6589.  
  6590.  
  6591.  
  6592.                                           93
  6593.  
  6594.  
  6595.  
  6596.  
  6597.  
  6598.  
  6599.  
  6600.  
  6601.         ---------------------------------------------------------------------
  6602.         @POINTER                                                          Data
  6603.         ---------------------------------------------------------------------
  6604.         Function  Returns information about the current cell.
  6605.  
  6606.         Syntax    @POINTER(attribute)
  6607.                   where  attribute  is  a  string  in  quotations  or  a  cell
  6608.                   reference.
  6609.  
  6610.         Remarks   This function returns various types of information about the
  6611.                   cell which the cell pointer  is currently in.  This function
  6612.                   is  intended  for  use in  application  programs  which need
  6613.                   information about  the current  cell.   attribute determines
  6614.                   what  information  is  returned,  and  must be  one  of  the
  6615.                   following strings;  "address", "col",  "contents", "format",
  6616.                   "prefix", "protect", "row", or "type".
  6617.  
  6618.         Example   attribute      @POINTER returns
  6619.                   "address"      the name of the current cell (for example B5)
  6620.  
  6621.                   "col"          the column number of the current cell (1 thru
  6622.                                  256)
  6623.  
  6624.                   "contents"     the contents of the current cell
  6625.  
  6626.                   "format"       the formatting of the current cell
  6627.                                  0 Default
  6628.                                  1 Fixed
  6629.                                  2 Currency
  6630.                                  3 Percent
  6631.                                  4 Scientific
  6632.                                  5 Hidden
  6633.                                  6 Text
  6634.                                  7 Fixed with commas
  6635.                                  8 Currency with commas
  6636.                                  9 Percent with commas
  6637.                                  10 dd-mmm-yy
  6638.                                  11 dd-mmm
  6639.                                  12 mmm-yy
  6640.                                  13 mm/dd/yy
  6641.                                  14 Month DD, YYYY
  6642.                                  15 HH:MM AM/PM
  6643.                                  16 HH:MM Military
  6644.                                  17 General
  6645.  
  6646.                   "prefix"       the  justification character  of the  current
  6647.                                  cell
  6648.                                  ' if left justified
  6649.                                  " if right justified
  6650.                                  ^ if centered
  6651.                                  blank if the cell doesn't contain text
  6652.  
  6653.                   "protect"      the protection status of the current cell
  6654.                                  0 = Not protected, 1 = Protected
  6655.  
  6656.                   "row"          the row number of the current cell (1 through
  6657.                                  4096)
  6658.  
  6659.  
  6660.                                           94
  6661.  
  6662.  
  6663.  
  6664.  
  6665.  
  6666.  
  6667.  
  6668.  
  6669.                   "type"         the type of data in the current cell
  6670.                                  BLANK,   FORMAT,   NUMBER,   TEXT,   FORMULA,
  6671.                                  TXTFORM, ERROR
  6672.  
  6673.  
  6674.  
  6675.  
  6676.         ---------------------------------------------------------------------
  6677.         @PROPER                                                         String
  6678.         ---------------------------------------------------------------------
  6679.         Function  Capitalizes the first letter of each word in a text string.
  6680.  
  6681.         Syntax    @PROPER(string)
  6682.                   where string is a string in quotations, or a cell address.
  6683.  
  6684.         Remarks   This function converts  the first letter of words  in string
  6685.                   to uppercase.
  6686.  
  6687.                   @PROPER  will only  recognize words  that  are separated  by
  6688.                   spaces, or other non alpha characters.
  6689.  
  6690.         Example   =@PROPER("this is a test") = This Is A Test
  6691.  
  6692.                   =@PROPER("mid-size") = Mid-Size
  6693.  
  6694.                   since the dash is a non alpha character.
  6695.  
  6696.  
  6697.  
  6698.         ---------------------------------------------------------------------
  6699.         @PV                                                          Financial
  6700.         ---------------------------------------------------------------------
  6701.         Function  Returns the present value of an annuity.
  6702.  
  6703.         Syntax    @PV(pmt,int,term)
  6704.                   where pmt,  int, and  term are  numbers, cell  addresses, or
  6705.                   calculated values.
  6706.  
  6707.         Remarks   This  function calculates the  present value of  an annuity,
  6708.                   given  the periodic payment, the periodic interest rate, and
  6709.                   the number of periods.
  6710.  
  6711.                   pmt is the  payment per period, int is the interest rate per
  6712.                   period, and term is the total number of payments.
  6713.  
  6714.                   The @PV function  does precisely the same thing  as the @NPV
  6715.                   function, except that  all payments are equal.   Thus, it is
  6716.                   only necessary  to enter the  amount once, rather than  as a
  6717.                   series of values.
  6718.  
  6719.                   The interest rate and term must agree; monthly payments must
  6720.                   be accompanied by a monthly term.
  6721.  
  6722.                   @PV  assumes  end-of-period-payments.     For  beginning-of-
  6723.                   period-payments, multiply the answer by (1+int).
  6724.  
  6725.         Example   To calculate  the present value  of an annuity in  which the
  6726.  
  6727.  
  6728.                                           95
  6729.  
  6730.  
  6731.  
  6732.  
  6733.  
  6734.  
  6735.  
  6736.  
  6737.                   payments are made monthly for  36 months, the interest  rate
  6738.                   is  10% per  year,  and  the payments  are  $400, enter  the
  6739.                   formula:
  6740.  
  6741.                   =@PV(400,0.1/12,36)
  6742.  
  6743.                   InstaCalc returns the value $12,396.42.
  6744.  
  6745.  
  6746.  
  6747.         ---------------------------------------------------------------------
  6748.         @QUARTER                                                     Date/Time
  6749.         ---------------------------------------------------------------------
  6750.         Function  The Quarter Function
  6751.  
  6752.         Syntax    @QUARTER(date number)
  6753.                   where  date number is a  number, cell address, or calculated
  6754.                   value.
  6755.  
  6756.         Remarks   This function returns the number  of the quarter of the year
  6757.                   (1 to  4) of  date number.   The  quarters  are: Quarter  1,
  6758.                   January  1 to  March  31; Quarter  2, April  1  to June  30;
  6759.                   Quarter 3, July 1 to September 30;  and Quarter 4, October 1
  6760.                   to December 31.
  6761.  
  6762.         Example   If cell A1 contains the date number of Feb. 1, 1989 (32540),
  6763.                   then
  6764.  
  6765.                   =@QUARTER(A1) = 1 (the first quarter)
  6766.  
  6767.  
  6768.  
  6769.  
  6770.         ---------------------------------------------------------------------
  6771.         @RADIANS                                                  Trigonometry
  6772.         ---------------------------------------------------------------------
  6773.         Function  Converts degrees to radians.
  6774.  
  6775.         Syntax    @RADIANS(x)
  6776.                   where x is a number, a cell address,  or a calculated value.
  6777.  
  6778.         Remarks   This function converts the angle x from degrees to radians.
  6779.  
  6780.                   Since InstaCalc's trigonometry  functions require angles  to
  6781.                   be expressed in radians, the @RADIANS function is useful for
  6782.                   making this conversion.
  6783.  
  6784.         Example   =@RADIANS(180) = 3.14159
  6785.                   =@RADIANS(45) = 0.7854
  6786.  
  6787.  
  6788.  
  6789.  
  6790.  
  6791.  
  6792.  
  6793.  
  6794.  
  6795.  
  6796.                                           96
  6797.  
  6798.  
  6799.  
  6800.  
  6801.  
  6802.  
  6803.  
  6804.  
  6805.         ---------------------------------------------------------------------
  6806.         @RAND                                                     Mathematical
  6807.         ---------------------------------------------------------------------
  6808.         Function  Returns a uniformly distributed random number.
  6809.  
  6810.         Syntax    @RAND
  6811.  
  6812.         Remarks   This function  generates a  random number  which is  greater
  6813.                   than or equal  to zero and is  less than one.  The  value of
  6814.                   @RAND will change to a new  random value each time the  cell
  6815.                   (not the Worksheet) is recalculated.  
  6816.  
  6817.                   If you  want the numbers  to fall within a  specified range,
  6818.                   multiply the @RAND result by the difference between the high
  6819.                   and low values in a range; then add this result to the lower
  6820.                   value in the range.
  6821.  
  6822.         Example   If you want to generate  a random number which falls between
  6823.                   20 and 25, then use
  6824.  
  6825.                   20+(5*@RAND)
  6826.  
  6827.  
  6828.  
  6829.         ---------------------------------------------------------------------
  6830.         @RATE                                                        Financial
  6831.         ---------------------------------------------------------------------
  6832.         Function  Returns the interest rate at which a present value will grow
  6833.                   to a future value.
  6834.  
  6835.         Syntax    @RATE(pv,fv,term)
  6836.                   where  pv,  fv, and  term  are numbers,  cell  addresses, or
  6837.                   calculated values.
  6838.  
  6839.         Remarks   This  function returns the interest  rate at which a present
  6840.                   value  will grow  into a  future  value during  a number  of
  6841.                   periods.  pv  is the present value amount  of an investment,
  6842.                   fv is the future value amount of the investment, and term is
  6843.                   the number of periods.
  6844.  
  6845.                   The periods are assumed to be regular intervals.  Converting
  6846.                   the compound growth  rate on a yearly basis,  given that the
  6847.                   term is expressed in months, simply requires that the answer
  6848.                   be multiplied by 12.
  6849.  
  6850.         Example   If  you want to  calculate the  periodic interest  rate that
  6851.                   will be required  to make an investment of  $1,000 grow into
  6852.                   $1,750 in five years,
  6853.  
  6854.                   =@RATE(1000,1750,5) = 0.1184 (or 11.84%)
  6855.  
  6856.  
  6857.  
  6858.  
  6859.  
  6860.  
  6861.  
  6862.  
  6863.  
  6864.                                           97
  6865.  
  6866.  
  6867.  
  6868.  
  6869.  
  6870.  
  6871.  
  6872.  
  6873.         ---------------------------------------------------------------------
  6874.         @REPEAT                                                         String
  6875.         ---------------------------------------------------------------------
  6876.         Function  Repeats text a given number of times.
  6877.  
  6878.         Syntax    @REPEAT(string,n)
  6879.                   where string  is a string  in quotations or a  cell address;
  6880.                   and n is a number, cell address, or calculated value.
  6881.  
  6882.         Remarks   This function returns string repeated n times.
  6883.  
  6884.         Example   =@REPEAT("abc",3) = abcabcabc
  6885.                   =@REPEAT("-",15) = ---------------
  6886.  
  6887.  
  6888.  
  6889.         ---------------------------------------------------------------------
  6890.         @REPLACE                                                        String
  6891.         ---------------------------------------------------------------------
  6892.         Function  Replaces a substring in a string with a new string.
  6893.  
  6894.         Syntax    @REPLACE(string,start,n,new string)
  6895.                   where string and  new string  are strings  in quotations  or
  6896.                   cell addresses; and start and n are numbers, cell addresses,
  6897.                   or calculated values.
  6898.  
  6899.         Remarks   This function removes  n characters from string  at position
  6900.                   start,   and  inserts  new  string  at  the  same  position.
  6901.                   @REPLACE not only  allows replacement of  a string; it  also
  6902.                   serves as an insert  or a delete function.   If n is set  to
  6903.                   zero, this is simply  an insert function.  If  new string is
  6904.                   empty, this serves as a delete function.
  6905.  
  6906.         Example   If A1 contains the string This is a test, then
  6907.  
  6908.                   =@REPLACE(A1,11,4,"game") = This is a game
  6909.                   =@REPLACE(A1,11,0," game") = This is a game test
  6910.                   =@REPLACE(A1,6,5,"") = This test
  6911.  
  6912.  
  6913.         ---------------------------------------------------------------------
  6914.         @RIGHT                                                          String
  6915.         ---------------------------------------------------------------------
  6916.         Function  Returns the right part of a text string.
  6917.  
  6918.         Syntax    @RIGHT(string,n)
  6919.                   where string  is a string  in quotations or a  cell address,
  6920.                   and n is a number, cell address, or calculated value. 
  6921.  
  6922.         Remarks   This function extracts and returns n characters from the end
  6923.                   of string.  If n is greater than the number of characters in
  6924.                   string, then the entire string is returned.
  6925.  
  6926.         See Also  @LEFT, @MID.
  6927.  
  6928.         Example   Column A  contains a  list of customer  phone numbers.   You
  6929.                   want  to create  customer  numbers by  using  the last  four
  6930.  
  6931.  
  6932.                                           98
  6933.  
  6934.  
  6935.  
  6936.  
  6937.  
  6938.  
  6939.  
  6940.  
  6941.                   digits of the telephone number.  Just  use =@RIGHT(A1,4) for
  6942.                   the first number.   If the  telephone number were  (208)882-
  6943.                   8656, InstaCalc would return the string 8656.
  6944.  
  6945.                   =@RIGHT("this is a test",8) = s a test
  6946.  
  6947.  
  6948.         ---------------------------------------------------------------------
  6949.         @ROUND                                                    Mathematical
  6950.         ---------------------------------------------------------------------
  6951.         Function  Rounds a value to a given number of decimal places.
  6952.  
  6953.         Syntax    @ROUND(x,n)
  6954.                   where x and  n are  numbers, cell  addresses, or  calculated
  6955.                   values.
  6956.  
  6957.         Remarks   This function returns the value of x rounded to n places.
  6958.  
  6959.                   n can  be either positive  or negative; when n  is negative,
  6960.                   the  program rounds  n digits  to  the left  of the  decimal
  6961.                   point.  When n is positive,  the program rounds n digits  to
  6962.                   the right of the decimal.
  6963.  
  6964.         Example   =@ROUND(123.456,-2) = 100
  6965.                   =@ROUND(123.456,-1) = 120
  6966.                   =@ROUND(123.456,2) = 123.46
  6967.                   =@ROUND(123.456,0) = 123
  6968.  
  6969.  
  6970.  
  6971.         ---------------------------------------------------------------------
  6972.         @ROWS                                                             Data
  6973.         ---------------------------------------------------------------------
  6974.         Function  Returns the number of rows in a range.
  6975.  
  6976.         Syntax    @ROWS(range)
  6977.  
  6978.         Remarks   This function returns the number of rows in range.  @ROWS is
  6979.                   particularly useful when used with named ranges.
  6980.  
  6981.         Example   If the range A1..B10 is named COST then
  6982.  
  6983.                   =@ROWS(COST) = 10
  6984.  
  6985.  
  6986.  
  6987.         ---------------------------------------------------------------------
  6988.         @SAMPSTD                                                   Statistical
  6989.         ---------------------------------------------------------------------
  6990.         Function  Returns the standard deviation of a list of sample values.
  6991.  
  6992.         Syntax    @SAMPSTD(list)
  6993.                   where list  is a list  of values separated  by commas, or  a
  6994.                   range containing values, or some combination of the two.
  6995.  
  6996.         Remarks   This  function  calculates  the  standard  deviation  of the
  6997.                   values in list.
  6998.  
  6999.  
  7000.                                           99
  7001.  
  7002.  
  7003.  
  7004.  
  7005.  
  7006.  
  7007.  
  7008.  
  7009.                   Standard deviation is a measure  of dispersion; that is,  it
  7010.                   measures the degree to which  each value in list varies from
  7011.                   the mean of the values in list.
  7012.  
  7013.                   @SAMPSTD will completely ignore all items  in list which are
  7014.                   text or blank.   This means  that if a  text string is  in a
  7015.                   range in list, you do not have to worry about it  being used
  7016.                   incorrectly in the calculation.
  7017.  
  7018.                   If you want to calculate the standard deviation of an entire
  7019.                   population rather than  a sample of  a population, you  must
  7020.                   use @STD.
  7021.  
  7022.         Example   =@SAMPSTD(0,1,2,3,4,5,6,7,8,9)  = 3.028
  7023.  
  7024.                   Similarly,  if cells A1  to A10 contained  those values, the
  7025.                   formula
  7026.  
  7027.                   =@SAMPSTD(A1..A10)  would return the value 3.028
  7028.  
  7029.  
  7030.         ---------------------------------------------------------------------
  7031.         @SAMPVAR                                                   Statistical
  7032.         ---------------------------------------------------------------------
  7033.         Function  Returns the variance of a list of sample values.
  7034.  
  7035.         Syntax    @SAMPVAR(list)
  7036.                   where list  is a list  of values  separated by commas,  or a
  7037.                   range containing values, or some combination of the two.
  7038.  
  7039.         Remarks   This function returns  the variance of the  values contained
  7040.                   in list.
  7041.  
  7042.                   The  @SAMPVAR function  measures dispersion,  much like  the
  7043.                   @SAMPSTD function.  In fact,  the variance of list is simply
  7044.                   the square of its standard deviation.
  7045.  
  7046.                   The  @SAMPVAR function will  completely ignore all  items in
  7047.                   the list which are text or blank.  This means that if a text
  7048.                   string is in a range in list, you do not have to worry about
  7049.                   it being used incorrectly in the calculation.
  7050.  
  7051.                   If   you  want  to  calculate  the  variance  of  an  entire
  7052.                   population rather than  a sample of  a population, you  must
  7053.                   use @VAR.
  7054.  
  7055.         Example   =@SAMPVAR(0,1,2,3,4,5,6,7,8,9) = 9.1666
  7056.  
  7057.                   Similarly, if cells A1 to A10 contain those values
  7058.  
  7059.                   =@SAMPVAR(A1..A10) = 9.1666
  7060.  
  7061.  
  7062.  
  7063.  
  7064.  
  7065.  
  7066.  
  7067.  
  7068.                                          100
  7069.  
  7070.  
  7071.  
  7072.  
  7073.  
  7074.  
  7075.  
  7076.  
  7077.         ---------------------------------------------------------------------
  7078.         @SECOND                                                      Date/Time
  7079.         ---------------------------------------------------------------------
  7080.         Function  Returns the second of a time number.
  7081.  
  7082.         Syntax    @SECOND(time number)
  7083.                   where  time  number  is  a  number, a  cell  address,  or  a
  7084.                   calculated value.
  7085.  
  7086.         Remarks   This  function returns the  value in seconds  (between 0 and
  7087.                   59) of time number.
  7088.  
  7089.                   time number  should be a  value between 0 and  1.  InstaCalc
  7090.                   will not ignore mixed numbers; rather,  it will extract only
  7091.                   the fractional  part.  The argument may be either a value, a
  7092.                   cell reference to a  value, or a cell reference to a formula
  7093.                   which calculates a value.
  7094.  
  7095.                   @SECOND is used whenever it is important to extract only the
  7096.                   second portion of a time value.  This function is most often
  7097.                   used in  conjunction with other time functions, such as @NOW
  7098.                   or @TIME.
  7099.  
  7100.         Example   If the current time were 10:43.34, then
  7101.  
  7102.                   =@SECOND(@NOW) = 34
  7103.  
  7104.                   =@SECOND(@TIME(10,20,30)) = 30
  7105.  
  7106.  
  7107.         ---------------------------------------------------------------------
  7108.         @SIGN                                                     Mathematical
  7109.         ---------------------------------------------------------------------
  7110.         Function  Returns the sign of a number.
  7111.  
  7112.         Syntax    @SIGN(x)
  7113.                   where x is a number, a cell address, or a calculated value.
  7114.  
  7115.         Remarks   This function returns  the sign of its x.  If x is negative,
  7116.                   the  function  returns -1.    If  x positive,  the  function
  7117.                   returns 1.  If x is 0, the function returns 0.
  7118.  
  7119.         Example   =@SIGN(23.4) = 1
  7120.                   =@SIGN(-13.9) = -1
  7121.                   =@SIGN(0) = 0
  7122.                   =@SIGN(@PI) = 1
  7123.  
  7124.  
  7125.         ---------------------------------------------------------------------
  7126.         @SIN                                                      Trigonometry
  7127.         ---------------------------------------------------------------------
  7128.         Function  Returns the sine of an angle.
  7129.  
  7130.         Syntax    @SIN(x)
  7131.                   where x is a number, a cell address, or a calculated value.
  7132.  
  7133.         Remarks   This function returns the sine of the angle x.  x must be in
  7134.  
  7135.  
  7136.                                          101
  7137.  
  7138.  
  7139.  
  7140.  
  7141.  
  7142.  
  7143.  
  7144.  
  7145.                   radians.   If x  is in degrees,  then the  @RADIANS function
  7146.                   must be used to convert x to radians.  The value returned by
  7147.                   the @SIN function will always lie between -1 and 1.
  7148.  
  7149.         Example   =@SIN(3) = 0.1411
  7150.                   =@SIN(@PI) = 0
  7151.                   =@SIN(@RADIANS(90)) = 1
  7152.  
  7153.  
  7154.  
  7155.         ---------------------------------------------------------------------
  7156.         @SINH                                                     Trigonometry
  7157.         ---------------------------------------------------------------------
  7158.         Function  Returns the hyperbolic sine of an angle.
  7159.  
  7160.         Syntax    @SINH(x)
  7161.                   where x is a number, a cell address, or a calculated value.
  7162.  
  7163.         Remarks   This function returns the hyperbolic sine of the angle x.  x
  7164.                   must be in radians.   If x is in degrees,  then the @RADIANS
  7165.                   function must be used to convert x to radians.
  7166.  
  7167.         Example   =@SINH(3) = 10.018
  7168.                   =@SINH(@PI) = 11.549
  7169.  
  7170.  
  7171.  
  7172.         ---------------------------------------------------------------------
  7173.         @SLN                                                         Financial
  7174.         ---------------------------------------------------------------------
  7175.         Function  Returns the  amount of  depreciation of  an asset  using the
  7176.                   straight line method.
  7177.  
  7178.         Syntax    @SLN(cost,salvage,life)
  7179.                   where cost, salvage,  and life are numbers,  cell addresses,
  7180.                   or calculated values.
  7181.  
  7182.         Remarks   This  function  calculates   and  returns   the  amount   of
  7183.                   depreciation of an  asset using the Straight-Line  method of
  7184.                   accelerated depreciation.   cost is  the cost of  the asset,
  7185.                   salvage  is the  salvage  value  of the  asset  after it  is
  7186.                   totally  depreciated, and  life  is the  useful life  of the
  7187.                   asset.  
  7188.  
  7189.  
  7190.         ---------------------------------------------------------------------
  7191.         @SQRT                                                     Mathematical
  7192.         ---------------------------------------------------------------------
  7193.         Function  Returns the square root of a value.
  7194.  
  7195.         Syntax    @SQRT(x)
  7196.                   where x is a number, a cell address, or a calculated value.
  7197.  
  7198.         Remarks   This function  returns the  square root  of x.    x must  be
  7199.                   positive,  since  any  two negative  numbers  multiply  to a
  7200.                   positive number.
  7201.  
  7202.  
  7203.  
  7204.                                          102
  7205.  
  7206.  
  7207.  
  7208.  
  7209.  
  7210.  
  7211.  
  7212.  
  7213.                   Since  @SQRT will not  work with  negative numbers,  it will
  7214.                   often  be necessary to  convert negative values  to positive
  7215.                   ones.   To do this,  simply combine the @SQRT  function with
  7216.                   the @ABS function.
  7217.  
  7218.         Example   =@SQRT(16) = 4
  7219.                   =@SQRT(-9) = ERROR
  7220.                   =@SQRT(@ABS(-9)) = 3
  7221.  
  7222.  
  7223.  
  7224.         ---------------------------------------------------------------------
  7225.         @STD                                                       Statistical
  7226.         ---------------------------------------------------------------------
  7227.         Function  Returns the standard deviation of a list of values.
  7228.  
  7229.         Syntax    @STD(list)
  7230.                   where  list is a  list of values  separated by  commas, or a
  7231.                   range containing values, or some combination of the two.
  7232.  
  7233.         Remarks   This  function  calculates  the  standard  deviation  of the
  7234.                   values in list.
  7235.  
  7236.                   Standard  deviation is a measure of  dispersion; that is, it
  7237.                   measures the degree to which  each value in list varies from
  7238.                   the mean of the values in list.
  7239.  
  7240.                   @STD will completely ignore all items in list which are text
  7241.                   or blank.  This means that if a text string is in a range in
  7242.                   list,  you  do  not  have  to  worry  about  it  being  used
  7243.                   incorrectly in the calculation.
  7244.  
  7245.                   @STD   calculates  the  standard   deviation  of  an  entire
  7246.                   population.  If you want to calculate the standard deviation
  7247.                   of  a  sample   of  a  population  rather  than  the  entire
  7248.                   population, you must use @SAMPSTD.
  7249.  
  7250.         Example   =@STD(0,1,2,3,4,5,6,7,8,9)  = 2.87
  7251.  
  7252.                   Similarly, if  cells A1 to  A10 contained those  values, the
  7253.                   formula
  7254.  
  7255.                   =@STD(A1..A10)  would return the value 2.87
  7256.  
  7257.  
  7258.         ---------------------------------------------------------------------
  7259.         @STRING                                                         String
  7260.         ---------------------------------------------------------------------
  7261.         Function  Converts a value to a string.
  7262.  
  7263.         Syntax    @STRING(x,n)
  7264.                   where  x and  n are  values,  cell addresses,  or calculated
  7265.                   values.
  7266.  
  7267.         Remarks   This function converts x to a string with n decimal places.
  7268.  
  7269.                   To perform  string operations on values, you must use either
  7270.  
  7271.  
  7272.                                          103
  7273.  
  7274.  
  7275.  
  7276.  
  7277.  
  7278.  
  7279.  
  7280.  
  7281.                   the @STRING or  @FORMAT functions to convert the  value to a
  7282.                   string.
  7283.  
  7284.         Example   If cell A1 contains the function @PI, then
  7285.  
  7286.                   =@STRING(A1,3)
  7287.  
  7288.                   will return the string 3.142
  7289.  
  7290.  
  7291.  
  7292.         ---------------------------------------------------------------------
  7293.         @SUM                                                       Statistical
  7294.         ---------------------------------------------------------------------
  7295.         Function  Returns the sum of a list of values.
  7296.  
  7297.         Syntax    @SUM(list)
  7298.                   where  list is a  list of values  separated by  commas, or a
  7299.                   range containing values, or some combination of the two.
  7300.  
  7301.         Remarks   This function adds up all of the values contained in list.
  7302.  
  7303.                   @SUM will completely ignore all items in list which are text
  7304.                   or blank.  This means that if a text string is in a range in
  7305.                   list,  you  do  not  have  to  worry  about  it  being  used
  7306.                   incorrectly in the calculation.
  7307.  
  7308.         Example   =@SUM(0,1,2,3,4,5,6,7,8,9)  = 45
  7309.  
  7310.                   Similarly, if cells A1  to A10 contained those same  values,
  7311.                   entering the formula
  7312.  
  7313.                   =@SUM(A1..A10)  would return the value 45.
  7314.  
  7315.  
  7316.  
  7317.         ---------------------------------------------------------------------
  7318.         @SYD                                                         Financial
  7319.         ---------------------------------------------------------------------
  7320.         Function  Returns the amount of depreciation of an asset using the Sum
  7321.                   of the Years' Digits method.
  7322.  
  7323.         Syntax    @SYD(cost,salvage,life,period)
  7324.                   where  cost, salvage,  life, and  period  are numbers,  cell
  7325.                   addresses, or calculated values.
  7326.  
  7327.         Remarks   This  function calculates the  amount of depreciation  of an
  7328.                   asset   using   the   Sum-of-the-Years'-Digits   method   of
  7329.                   accelerated depreciation.
  7330.  
  7331.                   cost is the cost of the asset, salvage  is the salvage value
  7332.                   of the  asset after it  is totally depreciated, life  is the
  7333.                   useful life  of the asset,  and period is the  period within
  7334.                   that life in which the depreciation is being calculated.
  7335.  
  7336.         Example   Your company purchased  a piece of  equipment last year  for
  7337.                   $40,000.  Its scrap value has been determined to be $11,000,
  7338.  
  7339.  
  7340.                                          104
  7341.  
  7342.  
  7343.  
  7344.  
  7345.  
  7346.  
  7347.  
  7348.  
  7349.                   and its useful  life is seven years.   How much depreciation
  7350.                   should be assigned to it in this, its second  year of useful
  7351.                   life?
  7352.  
  7353.                   =@SYD(40000,11000,7,2) = $6,214.29
  7354.  
  7355.  
  7356.         ---------------------------------------------------------------------
  7357.         @TAN                                                      Trigonometry
  7358.         ---------------------------------------------------------------------
  7359.         Function  Returns the tangent of an angle.
  7360.  
  7361.         Syntax    @TAN(x)
  7362.                   where x is a number, a cell address, or a calculated value.
  7363.  
  7364.         Remarks   This function returns the tangent of the angle x.  x must be
  7365.                   expressed in radians.  If x is in degrees, then the @RADIANS
  7366.                   function must be used to convert x to radians.
  7367.  
  7368.         Example   =@TAN(3)  = -0.1425.
  7369.                   =@TAN(7) = 0.8714.
  7370.  
  7371.  
  7372.  
  7373.         ---------------------------------------------------------------------
  7374.         @TANH                                                     Trigonometry
  7375.         ---------------------------------------------------------------------
  7376.         Function  Returns the hyperbolic tangent of an angle.
  7377.  
  7378.         Syntax    @TANH(x)
  7379.                   where x is a number, a cell address, or a calculated value.
  7380.  
  7381.         Remarks   This function returns the hyperbolic tangent of the angle x.
  7382.                   x must be  expressed in radians.   If x is in  degrees, then
  7383.                   the @RADIANS function must be used to convert x to radians.
  7384.  
  7385.         Example   =@TANH(3) = 0.99505
  7386.                   =@TANH(0) = 0
  7387.  
  7388.  
  7389.  
  7390.         ---------------------------------------------------------------------
  7391.         @TERM                                                        Financial
  7392.         ---------------------------------------------------------------------
  7393.         Function  Returns the number  of periods for an investment  to reach a
  7394.                   future value.
  7395.  
  7396.         Syntax    @TERM(pmt,int,fv)
  7397.                   where  pmt, int,  and  fv are  numbers,  cell addresses,  or
  7398.                   calculated values.
  7399.  
  7400.         Remarks   This function returns the number  of terms needed to reach a
  7401.                   specified  future value,  given an  interest  rate (rate  of
  7402.                   return)  and the  value of  equal  payment to  be made  each
  7403.                   period.
  7404.  
  7405.                   pmt is the amount of the equal periodic payments, int is the
  7406.  
  7407.  
  7408.                                          105
  7409.  
  7410.  
  7411.  
  7412.  
  7413.  
  7414.  
  7415.  
  7416.  
  7417.                   interest  rate or  expected rate  of return,  and fv  is the
  7418.                   future value to be reached.
  7419.  
  7420.                   Many investments (including  many people's savings accounts)
  7421.                   take  a series of equal payments.   To determine how long it
  7422.                   will take  to accumulate a  specific future  value, use  the
  7423.                   @TERM function.
  7424.  
  7425.         Example   You deposit  $500 per month  in your savings  account, which
  7426.                   earns 7% annually.  You need $9,000 to make the down payment
  7427.                   on  your first  home.    How many  months  will  it take  to
  7428.                   accumulate that much?
  7429.  
  7430.                   First, convert the yearly interest to months.  Divide .07 by
  7431.                   12; monthly interest is .00583.  Enter the formula:
  7432.  
  7433.                   =@TERM(500,0.00583,9000)
  7434.  
  7435.                   The formula  returns  the number  of months  to achieve  the
  7436.                   goal, 17.
  7437.  
  7438.  
  7439.         ---------------------------------------------------------------------
  7440.         @TIME                                                        Date/Time
  7441.         ---------------------------------------------------------------------
  7442.         Function  Returns a time number for a time.
  7443.  
  7444.         Syntax    @TIME(hour,min,sec)
  7445.                   where  hour, min,  and sec are  numbers, cell  addresses, or
  7446.                   calculated values.
  7447.  
  7448.         Remarks   This function  returns a time  number between 0 and  1, from
  7449.                   hour, min, and sec.
  7450.  
  7451.                   hour is the hour of the  day (between 0 and 23), min is  the
  7452.                   minute of  the  hour (between  0  and 59),  and  sec is  the
  7453.                   seconds of the minute (between 0 and 59).
  7454.  
  7455.                   It is  usually necessary to format the cell containing @TIME
  7456.                   using the /Cell Format Date command.
  7457.  
  7458.         Example   If  cell A4 contains the following  formula and is formatted
  7459.                   in a time format, then
  7460.  
  7461.                   =@TIME(15,12,25)
  7462.  
  7463.                   in cell A4 would return the time: 3:12:25
  7464.  
  7465.  
  7466.         ---------------------------------------------------------------------
  7467.         @TODAY                                                       Date/Time
  7468.         ---------------------------------------------------------------------
  7469.         Function  Returns the date number of the current date.
  7470.  
  7471.         Syntax    @TODAY
  7472.  
  7473.         Remarks   This function  reads the system  clock and returns  the date
  7474.  
  7475.  
  7476.                                          106
  7477.  
  7478.  
  7479.  
  7480.  
  7481.  
  7482.  
  7483.  
  7484.  
  7485.                   number for the current date.  
  7486.  
  7487.  
  7488.  
  7489.         ---------------------------------------------------------------------
  7490.         @TRIM                                                           String
  7491.         ---------------------------------------------------------------------
  7492.         Function  Trims all extra spaces out of a text string.
  7493.  
  7494.         Syntax    @TRIM(string)
  7495.                   where string is a string in quotations, or a cell address.
  7496.  
  7497.         Remarks   This  function strips  all extra  spaces from  string.   The
  7498.                   result contains only single spaces between words.
  7499.  
  7500.                   Often, importing  ASCII  files  will  produce  strings  with
  7501.                   extraneous spaces.  The problem is overcome with @TRIM.
  7502.  
  7503.         Example   The imported string in A1 reads:
  7504.  
  7505.                      This    is a           test.
  7506.  
  7507.                   Entering the formula =@TRIM(A1) produces the new string:
  7508.  
  7509.                   This is a test.
  7510.  
  7511.  
  7512.  
  7513.         ---------------------------------------------------------------------
  7514.         @TRUE                                                          Logical
  7515.         ---------------------------------------------------------------------
  7516.         Function  Returns the value TRUE (1).
  7517.  
  7518.         Syntax    @TRUE
  7519.  
  7520.         Remarks   This function returns the value 1 (TRUE).
  7521.  
  7522.  
  7523.  
  7524.  
  7525.  
  7526.  
  7527.  
  7528.  
  7529.  
  7530.  
  7531.  
  7532.  
  7533.  
  7534.  
  7535.  
  7536.  
  7537.  
  7538.  
  7539.  
  7540.  
  7541.  
  7542.  
  7543.  
  7544.                                          107
  7545.  
  7546.  
  7547.  
  7548.  
  7549.  
  7550.  
  7551.  
  7552.  
  7553.         ---------------------------------------------------------------------
  7554.         @UPPER                                                          String
  7555.         ---------------------------------------------------------------------
  7556.         Function  Converts all the characters of a text string to uppercase.
  7557.  
  7558.         Syntax    @UPPER(string)
  7559.                   where string is a string in quotations, or a cell address.
  7560.  
  7561.         Remarks   The @UPPER function converts all of the characters in string
  7562.                   to uppercase.
  7563.  
  7564.         Example   If cell A1 contains the text "Instruction Manual"
  7565.  
  7566.                   =@UPPER(A1) = INSTRUCTION MANUAL
  7567.  
  7568.  
  7569.         ---------------------------------------------------------------------
  7570.         @VALUE                                                          String
  7571.         ---------------------------------------------------------------------
  7572.         Function  Returns the value that a text string looks like.
  7573.  
  7574.         Syntax    @VALUE(string)
  7575.                   where string is a string in quotations or a cell address.
  7576.  
  7577.         Remarks   This function converts string into  a value that can be used
  7578.                   in formulas, equations,  and other calculations.   @VALUE is
  7579.                   especially useful  for converting  mixed fractions  (such as
  7580.                   stock values) into numerical values.
  7581.  
  7582.         Example   If A1 contains the label, "4.34"
  7583.  
  7584.                   =@VALUE(A1) = 4.34
  7585.                   =@VALUE("3 1/4") = 3.25
  7586.  
  7587.  
  7588.         ---------------------------------------------------------------------
  7589.         @VAR                                                       Statistical
  7590.         ---------------------------------------------------------------------
  7591.         Function  Returns the variance of a list of values.
  7592.  
  7593.         Syntax    @VAR(list)
  7594.                   where list  is a list  of values separated  by commas, or  a
  7595.                   range containing values, or some combination of the two.
  7596.  
  7597.         Remarks   This function returns  the variance of the  values contained
  7598.                   in list.
  7599.  
  7600.                   The  @VAR function measures  dispersion, much like  the @STD
  7601.                   function.   In  fact, the  variance  of list  is simply  the
  7602.                   square of its standard deviation.
  7603.  
  7604.                   The  @VAR function will  completely ignore all  items in the
  7605.                   list which are  text or blank.   This means  that if a  text
  7606.                   string is in a range in list, you do not have to worry about
  7607.                   it being used incorrectly in the calculation.
  7608.  
  7609.                   @VAR calculates  the variance of  an entire population.   If
  7610.  
  7611.  
  7612.                                          108
  7613.  
  7614.  
  7615.  
  7616.  
  7617.  
  7618.  
  7619.  
  7620.  
  7621.                   you  want  to  calculate  the  variance of  a  sample  of  a
  7622.                   population rather than  the entire population, you  must use
  7623.                   @SAMPVAR.
  7624.  
  7625.         Example   =@VAR(0,1,2,3,4,5,6,7,8,9) = 8.25
  7626.  
  7627.                   Similarly, if cells A1 to A10 contain those values
  7628.  
  7629.                   =@VAR(A1..A10) = 8.25
  7630.  
  7631.  
  7632.  
  7633.  
  7634.         ---------------------------------------------------------------------
  7635.         @VLOOKUP                                                          Data
  7636.         ---------------------------------------------------------------------
  7637.         Function  Looks up an item in a vertical lookup table.
  7638.  
  7639.         Syntax    @VLOOKUP(x,range,col offset)
  7640.                   where range is a range of cells, named or otherwise; and col
  7641.                   offset is a number, cell address, or calculated value; and x
  7642.                   is a number, text, cell address, or calculated value.
  7643.  
  7644.         Remarks   This function looks up and retrieves a value or  text from a
  7645.                   vertical lookup  table.  range  is the range of  cells which
  7646.                   makes up the lookup table.
  7647.  
  7648.                   If x is text, @VLOOKUP will compare x with each cell  in the
  7649.                   left column of range, and if a match is found, will move col
  7650.                   offset columns from that cell,  and will return the value in
  7651.                   the resulting cell.  If x does not match any of the cells in
  7652.                   the  left  column of  range, then  @VLOOKUP will  return the
  7653.                   value ERROR.
  7654.  
  7655.                   If x  is a value  instead of text,  @VLOOKUP will  compare x
  7656.                   with each cell  in the left column of range until it finds a
  7657.                   cell which  is greater than or equal to  x.  This means that
  7658.                   the values in the  left column of range must be in ascending
  7659.                   order for @VLOOKUP  to work correctly.  If the  value in the
  7660.                   cell is  equal to x, @VLOOKUP will consider  it a match.  If
  7661.                   the cell is  greater than x,  @VLOOKUP will move  up to  the
  7662.                   previous  cell and consider it a match.  For example, if the
  7663.                   values in the  left column of range  are 100, 200,  300, and
  7664.                   400, and  the value of x  is 250, then @VLOOKUP  will search
  7665.                   until it reaches  300, and will then  move back and use  the
  7666.                   cell containing  200 as the  match.  When a  match is found,
  7667.                   @VLOOKUP will move  col offset columns  from that cell,  and
  7668.                   will return  the value  in  the resulting  cell.   If  x  is
  7669.                   smaller than  the first  cell in  the left  column, @VLOOKUP
  7670.                   will return the value ERROR. 
  7671.  
  7672.  
  7673.  
  7674.  
  7675.  
  7676.  
  7677.  
  7678.  
  7679.  
  7680.                                          109
  7681.  
  7682.  
  7683.  
  7684.  
  7685.  
  7686.  
  7687.  
  7688.  
  7689.         ---------------------------------------------------------------------
  7690.         @WEEKDAY                                                     Date/Time
  7691.         ---------------------------------------------------------------------
  7692.         Function  Returns the day of the week for a date number.
  7693.  
  7694.         Syntax    @WEEKDAY(date number)
  7695.                   where  date  number  is  a  number, a  cell  address,  or  a
  7696.                   calculated value.
  7697.  
  7698.         Remarks   This  function  returns  the  day of  the  week  (numbered 1
  7699.                   through 7,  with 1  being Sunday and  7 being  Saturday) for
  7700.                   date number.
  7701.  
  7702.         Example   Cell A1 contains the date number  (32540) that is equivalent
  7703.                   to the date 2/1/89.  Entering the formula 
  7704.  
  7705.                   =@WEEKDAY(A1) = 4, (Wednesday)
  7706.  
  7707.  
  7708.  
  7709.         ---------------------------------------------------------------------
  7710.         @YEAR                                                        Date/Time
  7711.         ---------------------------------------------------------------------
  7712.         Function  Returns the year of a date number.
  7713.  
  7714.         Syntax    @YEAR(date number)
  7715.                   where  date  number  is  a  number, a  cell  address,  or  a
  7716.                   calculated value.
  7717.  
  7718.         Remarks   This function returns the year of date number.  For years in
  7719.                   the 1900's, the final  2 digits are returned.   For the year
  7720.                   2000  @YEAR will  return the  value  100.   Again, the  date
  7721.                   number  is  usually  supplied  by  one  of  the  other  date
  7722.                   functions;  this function is  used to extract  the year from
  7723.                   one of those functions.
  7724.  
  7725.         Example   CURRENT YEAR   @YEAR(@NOW) returns
  7726.                   1980           80
  7727.                   1999           99
  7728.                   2000           100
  7729.                   2001           101
  7730.  
  7731.  
  7732.         ---------------------------------------------------------------------
  7733.         @@                                                                Data
  7734.         ---------------------------------------------------------------------
  7735.         Function  Returns data from a cell through an indirect reference.
  7736.  
  7737.         Syntax    @@(cellname)
  7738.                   where cellname is a string in quotations or a cell address
  7739.  
  7740.         Remarks   This function  will return  the contents of  the cell  named
  7741.                   cellname.
  7742.  
  7743.                   If cellname  is a  string which looks  like a  cell address,
  7744.                   then @@ will read and return the  contents of the cell named
  7745.                   cellname.  If cellname is a cell reference, then @@ will use
  7746.  
  7747.  
  7748.                                          110
  7749.  
  7750.  
  7751.  
  7752.  
  7753.  
  7754.  
  7755.  
  7756.  
  7757.                   the contents of cellname as the name of the cell to retrieve
  7758.                   data from.   @@ is  typically used in macros,  where you may
  7759.                   need   to   retrieve   the   contents   of   certain   cells
  7760.                   automatically.
  7761.  
  7762.         Example   If cell  B5 contains the  text Overdue and cell  A1 contains
  7763.                   the text 'B5, then
  7764.  
  7765.                   @@(A1)  and  @@("B5")
  7766.  
  7767.                   will both return the label Overdue
  7768.  
  7769.  
  7770.  
  7771.  
  7772.  
  7773.  
  7774.  
  7775.  
  7776.  
  7777.  
  7778.  
  7779.  
  7780.  
  7781.  
  7782.  
  7783.  
  7784.  
  7785.  
  7786.  
  7787.  
  7788.  
  7789.  
  7790.  
  7791.  
  7792.  
  7793.  
  7794.  
  7795.  
  7796.  
  7797.  
  7798.  
  7799.  
  7800.  
  7801.  
  7802.  
  7803.  
  7804.  
  7805.  
  7806.  
  7807.  
  7808.  
  7809.  
  7810.  
  7811.  
  7812.  
  7813.  
  7814.  
  7815.  
  7816.                                          111
  7817.  
  7818.  
  7819.  
  7820.  
  7821.  
  7822.  
  7823.  
  7824.  
  7825.         INSTACALC APPLICATIONS
  7826.  
  7827.         InstaCalc provides  a programming  environment which  you  can use  to
  7828.         create  any application, from a simple time-saving keystroke repeating
  7829.         routine to a fully customized business application.
  7830.  
  7831.         An InstaCalc application simply consists of a text file containing the
  7832.         commands which you would like InstaCalc to execute.  You may give your
  7833.         program files any  valid DOS name, but the extension must be .MAC (for
  7834.         example  MYPROG.MAC).  Your  program can consist  of keystroke macros,
  7835.         InstaCalc Command Environment (ICE) commands, or both.
  7836.  
  7837.         Macros    A  keystroke  macro  is  simply  a  sequence  of  keystrokes
  7838.                   following  the  apostrophe  character  '.    When  InstaCalc
  7839.                   encounters one of these keystroke sequences in your program,
  7840.                   it  simply treats  the keystrokes  as if  you typed  them in
  7841.                   yourself.  For example, if you place the line:
  7842.  
  7843.                   '/wic<Enter>
  7844.  
  7845.                   into   your  application   program,   then  InstaCalc   will
  7846.                   automatically insert two columns when it executes this line.
  7847.                   It does  this by  first typing the  / character  (which will
  7848.                   bring  up the  menu), then  W (for  WorkSheet), then  I (for
  7849.                   insert),  then C (for  column), and finally  the <Enter> key
  7850.                   (to complete the command).
  7851.  
  7852.         Commands  The   InstaCalc  Command  Environment  (ICE)  is  a  set  of
  7853.                   instructions  which  provides   flexible  I/O  capabilities,
  7854.                   numerous control  structures, printer  and  DOS access,  and
  7855.                   more.  In  fact, you may find  that the ICE commands  are so
  7856.                   versatile that many  of your application programs  will need
  7857.                   few if any keystroke macros.
  7858.  
  7859.  
  7860.  
  7861.         CREATING AN APPLICATION
  7862.  
  7863.         The easiest way to create a  keystroke macro is with InstaCalc's Macro
  7864.         Recorder.    To  begin  recording   a  macro,  you  simply  press  the
  7865.         <Ctrl><F10> key.  You then press the  key you want to assign the macro
  7866.         to, and begin typing the keys to  record.  When you are ready to  stop
  7867.         recording, just press the <Ctrl><F10> key  again.  Your macro will  be
  7868.         stored in a  file whose name corresponds  to the key you  assigned the
  7869.         macro to.   For example,  a macro assigned  to <Ctrl>T would  be named
  7870.         CTRLT.MAC.
  7871.  
  7872.         Later, when you press <Ctrl>T, InstaCalc will look for the application
  7873.         file CTRLT.MAC, and run it if it exists.  If it doesn't exist, then an
  7874.         error message  will pop up.   Applications or keystroke macros  can be
  7875.         assigned to just about any key which isn't already defined and used by
  7876.         InstaCalc.   For example,  you  can't redefine  the arrow  keys to  do
  7877.         something else,  but you can assign other keys to do the same thing as
  7878.         the arrow keys.  
  7879.  
  7880.         Applications may also be created with a text editor, just as you would
  7881.         write a program in  any programming language.  InstaCalc  applications
  7882.  
  7883.  
  7884.                                          112
  7885.  
  7886.  
  7887.  
  7888.  
  7889.  
  7890.  
  7891.  
  7892.  
  7893.         are not limited to simple keystroke macros.  InstaCalc supplies a rich
  7894.         programming  language  which   provides  flexible  I/O   capabilities,
  7895.         numerous  control  structures (If/Then/Else,  For/Next,  Repeat/Until,
  7896.         While/Endwhile,  etc), access to  DOS commands and  external programs,
  7897.         and more. 
  7898.  
  7899.         These applications can be written using either the simple editor which
  7900.         InstaCalc provides (/Macro  Edit), or outside  of InstaCalc with  your
  7901.         own text  editor.  You  may give your  application any valid  DOS name
  7902.         (the extension  must be  .MAC), including one  of the  keystroke names
  7903.         (such  as  ALTX.MAC).   This  allows  you  to run  extremely  powerful
  7904.         applications at the press of a key.  
  7905.  
  7906.         There are a number  of advantages to  having applications reside in  a
  7907.         file rather than in the worksheet itself.
  7908.  
  7909.         - The application  can load and save data files  without being written
  7910.         over by the incoming worksheet.
  7911.  
  7912.         -  You can create large libraries of applications and macros which can
  7913.         be used  in any  worksheet without having  to load the  entire library
  7914.         into memory each time.
  7915.  
  7916.         - Large  applications can be  broken into smaller parts,  and only the
  7917.         part which  is running  needs to  be in  memory.   This means you  can
  7918.         create  and run applications which  would normally require more memory
  7919.         than is available.
  7920.  
  7921.  
  7922.  
  7923.         RUNNING AN APPLICATION
  7924.  
  7925.         Once you have created your application program, you will probably want
  7926.         to  run it.   There  are  many ways  to run  an  InstaCalc application
  7927.         program which you have created.
  7928.  
  7929.         /Macro Run     You can run an application program from the menus using
  7930.                        the /Macro Run command.  You will be asked for the name
  7931.                        of  the  application  program to  run.    If  you press
  7932.                        <Enter> without  entering  a name,  the InstaCalc  file
  7933.                        manager  will  pop up  from  which you  may  select the
  7934.                        application from.
  7935.  
  7936.         Keystroke      If  you have  named your  application with  one  of the
  7937.                        keystroke  names,  you  can  run   the  application  by
  7938.                        pressing the key.  For example, if the application file
  7939.                        is named CTRLX.MAC  then pressing <Ctrl>X will  run the
  7940.                        application.
  7941.  
  7942.         Worksheet      You can also give your application the same name as one
  7943.                        of your worksheets  (except that the extension  will be
  7944.                        .MAC instead of .INS).  When a new data file  (.INS) is
  7945.                        retrieved,  InstaCalc  will check  for  a corresponding
  7946.                        application to  run.   For example,  when you  retrieve
  7947.                        INVOICE.INS, then InstaCalc  will look for and  run the
  7948.                        application INVOICE.MAC (if it exists).
  7949.  
  7950.  
  7951.  
  7952.                                          113
  7953.  
  7954.  
  7955.  
  7956.  
  7957.  
  7958.  
  7959.  
  7960.  
  7961.         If an error is encountered when running  an application, then an error
  7962.         message  will  first be  displayed.   Then,  when you  press a  key to
  7963.         continue,  InstaCalc will  load the  application into the  editor, and
  7964.         place you on the line where the error occurred to allow you to fix the
  7965.         problem.  
  7966.  
  7967.  
  7968.  
  7969.         LANGUAGE DESCRIPTION
  7970.  
  7971.         An InstaCalc program is one or more lines of text residing in an ASCII
  7972.         file.   There are four  different types of lines  which you can put in
  7973.         your application; comments,  labels, macros, and commands.   The first
  7974.         character of each line  of text determines  what type of command  that
  7975.         line is.  Each line of your application program will begin with one of
  7976.         four  different characters,  a pound  sign (#),  an apostrophe  ('), a
  7977.         colon (:), or an exclamation mark (!).
  7978.  
  7979.         Comments  A line which begins with an exclamation mark (!) is simply a
  7980.                   comment.  All of the characters on  the line after the ! are
  7981.                   ignored  when InstaCalc runs  the application program.   The
  7982.                   sole purpose of comments is  to make your programs easier to
  7983.                   understand when you read them.
  7984.  
  7985.                   Example:
  7986.  
  7987.                   ! This is a comment
  7988.  
  7989.                   This line  is ignored  when  InstaCalc encounters  it in  an
  7990.                   application program.
  7991.  
  7992.  
  7993.         Labels    A line which begins with a colon (:) is a label.  A label is
  7994.                   simply a  string  which marks  a  specific position  in  the
  7995.                   application program.
  7996.  
  7997.                   Example:
  7998.  
  7999.                   :MyLabel
  8000.  
  8001.                   This  line  does  nothing  when  it  is  encountered  in  an
  8002.                   InstaCalc application program.  Some InstaCalc ICE  commands
  8003.                   (such as #GOTO) use labels as a place to jump to for further
  8004.                   processing.
  8005.  
  8006.         Macros    A line which begins with an apostrophe (') is  a sequence of
  8007.                   direct keystrokes (keystroke macro) which you want InstaCalc
  8008.                   to execute.  Keystrokes which are printable ASCII characters
  8009.                   (letters,  numbers, symbols,  etc.)  are displayed  in their
  8010.                   printable  form.  Keystrokes  which are NOT  printable ASCII
  8011.                   characters   (such  as  function  keys,  Ctrl  and  Alt  key
  8012.                   sequences,  cursor movement keys, etc.) are displayed as the
  8013.                   name of the key enclosed in angle brackets <>.  For example,
  8014.                   the <Enter> key is displayed as <Enter>.
  8015.  
  8016.                   Example:
  8017.  
  8018.  
  8019.  
  8020.                                          114
  8021.  
  8022.  
  8023.  
  8024.  
  8025.  
  8026.  
  8027.  
  8028.  
  8029.                   '/cfcn2<Enter>
  8030.  
  8031.                   This  line causes  the  current  cell  to  be  formatted  as
  8032.                   currency with  2 decimal places and no commas.  This is done
  8033.                   because  InstaCalc processes each keystroke in the line just
  8034.                   as if you typed it in yourself.
  8035.                   - The / key is processed, which summons the main menu
  8036.                   - The C key is processed, which selects the "Cell" option
  8037.                   - The F key is processed, which selects the "Format" option
  8038.                   - The  C  key is  processed,  which selects  the  "Currency"
  8039.                   option
  8040.                   - The N key is processed, which selects the "NoComma" option
  8041.                   -  The number  "2"  is processed,  which types  2 in  as the
  8042.                   number of decimal places
  8043.                   - The <Enter>  causes the <Enter> key to  be processed (this
  8044.                   is one of the  special keys), which enters  the number 2  as
  8045.                   the number of decimal places.
  8046.  
  8047.                   Keystroke macros can even be read from cells.  Simply follow
  8048.                   the  apostrophe  with  the  cell  name  enclosed  in  square
  8049.                   brackets.   For example,  if you want  the keystrokes  to be
  8050.                   read from cell B5, simply use the line:
  8051.  
  8052.                   '[B5]
  8053.  
  8054.         Commands  A line  which begins with a  pound sign (#)  is an InstaCalc
  8055.                   Command Environment  (ICE) command.   It  is these  commands
  8056.                   which  provide  the  muscle  for  sophisticated  application
  8057.                   development.    These  commands are  described  in  the next
  8058.                   section.
  8059.  
  8060.  
  8061.  
  8062.  
  8063.  
  8064.  
  8065.  
  8066.  
  8067.  
  8068.  
  8069.  
  8070.  
  8071.  
  8072.  
  8073.  
  8074.  
  8075.  
  8076.  
  8077.  
  8078.  
  8079.  
  8080.  
  8081.  
  8082.  
  8083.  
  8084.  
  8085.  
  8086.  
  8087.  
  8088.                                          115
  8089.  
  8090.  
  8091.  
  8092.  
  8093.  
  8094.  
  8095.  
  8096.  
  8097.         SPECIAL KEY NAMES
  8098.  
  8099.         Although  the   letter,  number,  and  symbol  keys  can  be  directly
  8100.         referenced  by their  character, several  keys cannot  be referred  to
  8101.         using a single character.  InstaCalc gives  each of these keys its own
  8102.         name.   When one  of these  keystrokes is  encountered in  a keystroke
  8103.         macro, the name of the key is  surrounded by angle brackets <> so that
  8104.         InstaCalc  can  tell it  apart  from  regular  characters.   When  the
  8105.         keystroke is used as the name  of an application file, then the  angle
  8106.         brackets (and certain other characters)  are not used because DOS will
  8107.         not allow them.   Below is a list of special  keystrokes, and the name
  8108.         of the keystrokes when used both in a macro and as a file name.
  8109.  
  8110.         KEY SEQUENCE        KEYSTROKE NAME      FILE NAME
  8111.         <BkSp>              <BkSp>              N/A
  8112.         <Ctrl><BkSp>        <^BkSp>             N/A
  8113.         <Esc>               <Esc>               N/A
  8114.         <Enter>             <Enter>             N/A
  8115.         <Tab>               <Tab>               N/A
  8116.         <Ctrl>A-
  8117.              <Ctrl>Z *      <CtrlA> - <CtrlZ>   CTRLA.MAC-CTRLZ.MAC
  8118.         <Alt>A-
  8119.              <Alt>Z         <AltA> - <AltZ>     ALTA.MAC-ALTZ.MAC
  8120.         <Home>              <Home>              N/A
  8121.         <End>               <End>               N/A
  8122.         <Left>              <Left>              N/A
  8123.         <Right>             <Right>             N/A
  8124.         <Up>                <Up>                N/A
  8125.         <Down>              <Down>              N/A
  8126.         <PgUp>              <PgUp>              N/A
  8127.         <PgDn>              <PgDn>              N/A
  8128.         <Ins>               <Ins>               N/A
  8129.         <Del>               <Del>               N/A
  8130.         <F1> - <F10>        <F1>-<F10>          N/A
  8131.         <Shift><F1>-
  8132.              <Shift><F10>   <ShF1>-<ShF10>      SHF1.MAC-SHF10.MAC
  8133.         <Ctrl><F1>-
  8134.              <Ctrl><F10>    <^F1>-<^F10>        N/A
  8135.         <Alt><F1>-
  8136.              <Alt><F10>     <AltF1>-<AltF10>    ALTF1-ALTF10.MAC
  8137.         <Ctrl><Left>        <^Left>             N/A
  8138.         <Ctrl><Right>       <^Right>            N/A
  8139.         <Ctrl><Home>        <^Home>             N/A
  8140.         <Ctrl><End>         <^End>              N/A
  8141.         <Ctrl><PgUp>        <^PgUp>             N/A
  8142.         <Ctrl><PgDn>        <^PgDn>             N/A
  8143.  
  8144.         * <Ctrl>H, <Ctrl>I, and <Ctrl>M are not available as file names.
  8145.  
  8146.  
  8147.  
  8148.  
  8149.  
  8150.  
  8151.  
  8152.  
  8153.  
  8154.  
  8155.  
  8156.                                          116
  8157.  
  8158.  
  8159.  
  8160.  
  8161.  
  8162.  
  8163.  
  8164.  
  8165.         THE INSTACALC COMMAND ENVIRONMENT
  8166.  
  8167.         The InstaCalc Command Environment (ICE)  is a set of powerful commands
  8168.         which you can use in your application programs to create menus, pop up
  8169.         windows, access files, and even run other programs.
  8170.  
  8171.         Each ICE  command is a single word prefixed  with the # character (for
  8172.         example  #OUTPUT).   Most  of  these ICE  commands  require additional
  8173.         information on the same line.   These additional pieces of information
  8174.         are known as arguments.  If you have more than one argument on a line,
  8175.         you must separate them from each other with either a space or a comma.
  8176.         Also, if any of your  arguments are text strings which have a space or
  8177.         comma  in it, then  you must surround  the text string  with quotes so
  8178.         that InstaCalc knows to keep the text together.
  8179.  
  8180.         Example   The  command #OUTPUT  (which writes  text  onto the  screen)
  8181.                   requires 3  arguments; the column  and row on the  screen to
  8182.                   write to, as well as the text to write, like this:
  8183.  
  8184.                   #OUTPUT 5,10 "This is some text"
  8185.  
  8186.                   The ICE command  is #OUTPUT, and the three  arguments are 5,
  8187.                   10, and "This is some text".
  8188.  
  8189.         The arguments for each of the ICE commands is considered by default to
  8190.         be either a  constant numeric or  text value.   There are many  times,
  8191.         however, when it  is desirable (or necessary)  to use the result  of a
  8192.         formula  instead.   InstaCalc  allows  you provide  a  formula for  an
  8193.         argument by simply  enclosing the argument in square  brackets [] (you
  8194.         don't need to add the leading equal sign).
  8195.  
  8196.         Example   The format for the #OUTPUT command is:
  8197.  
  8198.                   #OUTPUT x,y line
  8199.  
  8200.                   By default, InstaCalc expects something like:
  8201.  
  8202.                   #OUTPUT 5,10 "This is some text"
  8203.  
  8204.                   This line  in an  application tells  InstaCalc to  write the
  8205.                   string This is some text starting in the 5th column and 10th
  8206.                   row of the screen.
  8207.  
  8208.                   Suppose, however,  that you  wanted to  output the value  of
  8209.                   cell A1 instead of  the constant "This is some text".   Then
  8210.                   you would simply use the line:
  8211.  
  8212.                   #OUTPUT 5,10 [A1]
  8213.  
  8214.                   Or if you  wanted to output the  contents of cell A1  in all
  8215.                   upper case you would use:
  8216.  
  8217.                   #OUTPUT 5,10 [@upper(A1)]
  8218.  
  8219.                   This method works just as  well for numeric arguments as for
  8220.                   text  arguments.   Suppose you wanted  to output  the string
  8221.                   "This  is some  text" starting  in the  5th column,  but you
  8222.  
  8223.  
  8224.                                          117
  8225.  
  8226.  
  8227.  
  8228.  
  8229.  
  8230.  
  8231.  
  8232.  
  8233.                   wanted the row to be the value in cell A1.  You would use:
  8234.  
  8235.                   #OUTPUT 5,[A1] "This is some text"
  8236.  
  8237.  
  8238.  
  8239.         INPUT/OUTPUT
  8240.         The I/O  commands provide  a variety  of ways  to read  data from  the
  8241.         keyboard, output to the  screen and printer.  There  are also commands
  8242.         to create customized  help and error systems.   You may  also generate
  8243.         delays and audible tones.
  8244.  
  8245.  
  8246.         DATA
  8247.         The data commands allow your application to move to or manipulate data
  8248.         in cells of the worksheet.
  8249.  
  8250.  
  8251.         CONTROL
  8252.         The control commands provide the ability to loop, perform  conditional
  8253.         or unconditional branching, and call subroutines.
  8254.  
  8255.  
  8256.         EXTERNAL
  8257.         The external commands  allow you to run DOS  commands, other programs,
  8258.         or other InstaCalc application programs as subroutines.
  8259.  
  8260.  
  8261.         DEBUGGING
  8262.         The debugging  commands allow you  to single step, set  conditional or
  8263.         unconditional  breakpoints, and  evaluate and  change  cells while  an
  8264.         application is running.
  8265.  
  8266.  
  8267.  
  8268.  
  8269.  
  8270.  
  8271.  
  8272.  
  8273.  
  8274.  
  8275.  
  8276.  
  8277.  
  8278.  
  8279.  
  8280.  
  8281.  
  8282.  
  8283.  
  8284.  
  8285.  
  8286.  
  8287.  
  8288.  
  8289.  
  8290.  
  8291.  
  8292.                                          118
  8293.  
  8294.  
  8295.  
  8296.  
  8297.  
  8298.  
  8299.  
  8300.  
  8301.         ---------------------------------------------------------------------
  8302.         #ASSIGN                                                           Data
  8303.         ---------------------------------------------------------------------
  8304.         Function  Assigns a value to a cell.
  8305.  
  8306.         Syntax    #ASSIGN cellname value
  8307.  
  8308.         Remarks   This command allows you to assign a value to a  cell without
  8309.                   having to move to it first.   cellname can be either a  cell
  8310.                   address or  a named range.  value can  be either a number or
  8311.                   text.
  8312.  
  8313.         Example   #ASSIGN B5 123.45
  8314.                   #ASSIGN C6 "January"
  8315.                   #ASSIGN interest .1
  8316.                   #ASSIGN A1 [@SIN(A1)]
  8317.  
  8318.         ---------------------------------------------------------------------
  8319.         #BLOCK                                                    Input/Output
  8320.         ---------------------------------------------------------------------
  8321.         Function  Allows you to  define a range by highlighting  or typing the
  8322.                   name.
  8323.  
  8324.         Syntax    #BLOCK cellname prompt
  8325.  
  8326.         Remarks   This  command displays prompt and  allows you to highlight a
  8327.                   range of  cells.   The range  selected is  stored as a  text
  8328.                   string  in cellname.    This cell  can then  be  used as  an
  8329.                   indirect  address in range functions by entering cellname in
  8330.                   square brackets when asked to define a range.
  8331.  
  8332.         Example   #BLOCK D3 "Fill which range with zeros?"
  8333.                   '/df[D3]<Enter>0<Enter>
  8334.  
  8335.                   will  ask you Fill which range  with zeros? and allow you to
  8336.                   highlight the  range.   If you  highlight the  range A1..B5,
  8337.                   then the string 'A1..B5 will be placed in cell D3.  When the
  8338.                   /Data Fill command asks for  the range to fill, the sequence
  8339.                   [D3] will be entered, and InstaCalc will use the contents of
  8340.                   D3 as the range to fill.  So the range A1..B5 will be filled
  8341.                   with zeros.
  8342.  
  8343.  
  8344.         ---------------------------------------------------------------------
  8345.         #BOX                                                      Input/Output
  8346.         ---------------------------------------------------------------------
  8347.         Function  Displays a box on the screen.
  8348.  
  8349.         Syntax    #BOX x1,y1,x2,y2 save title
  8350.  
  8351.         Remarks   This command displays a box  on the screen.  The upper  left
  8352.                   corner of the box is located at screen position x1,  y1, and
  8353.                   the lower right corner of the box is located at position x2,
  8354.                   y2.  save determines whether InstaCalc saves the contents of
  8355.                   the screen under  the box before displaying it.   If save=0,
  8356.                   then the screen contents are not saved.  If save=1, then the
  8357.                   screen  contents are  saved, and  can be restored  using the
  8358.  
  8359.  
  8360.                                          119
  8361.  
  8362.  
  8363.  
  8364.  
  8365.  
  8366.  
  8367.  
  8368.  
  8369.                   #CLEARBOX  command.   Saving  the  screen contents  requires
  8370.                   extra  memory, so  if  it  isn't  necessary to  restore  the
  8371.                   contents, it is best to set save to 0.  The #RESTORE command
  8372.                   will restore the  InstaCalc screen even if  it wasn't saved,
  8373.                   so you can use #BOX with save=0 to clear the screen to begin
  8374.                   your application.
  8375.  
  8376.         Example   #BOX 1,1,80,25 0 "Main Screen"
  8377.  
  8378.                   this command clears the screen with the title Main Screen.
  8379.  
  8380.  
  8381.  
  8382.         ---------------------------------------------------------------------
  8383.         #BREAK                                                         Control
  8384.         ---------------------------------------------------------------------
  8385.         Function  Enables/disables breaking out of programs.
  8386.  
  8387.         Syntax    #BREAK 0/1
  8388.  
  8389.         Remarks   This command allows you to  enable or disable the ability to
  8390.                   break out of  an application program while it  is running by
  8391.                   pressing <Ctrl><F3>.   By default, an application  will exit
  8392.                   when  <Ctrl><F3>  is  pressed.   This  command  provides the
  8393.                   capability to  prevent  a user  from  breaking out  of  your
  8394.                   application.   It  is best  to leave  breaking  enabled when
  8395.                   creating your application.
  8396.  
  8397.         Example   #BREAK 0
  8398.                   causes your program to ignore <Ctrl><F3> when it is pressed.
  8399.  
  8400.  
  8401.         ---------------------------------------------------------------------
  8402.         #CALL                                                          Control
  8403.         ---------------------------------------------------------------------
  8404.         Function  Calls a subroutine.
  8405.  
  8406.         Syntax    #CALL label / #RETURN
  8407.  
  8408.         Remarks   This command causes execution of  the program to continue at
  8409.                   label.    When  the #RETURN  statement  is  encountered, the
  8410.                   program  branches back to the line immediately following the
  8411.                   original #CALL command.
  8412.  
  8413.         Example   #CALL MyLabel
  8414.                   #OUTPUT 10,11 "Print this second"
  8415.                   #EXIT
  8416.  
  8417.                   :MyLabel
  8418.                   #OUTPUT 10,10 "Print this first"
  8419.                   #RETURN
  8420.  
  8421.                   The #CALL statement  branches to MyLabel and  executes lines
  8422.                   until the  #RETURN command,  then returns  back to  the line
  8423.                   following the #CALL statement.
  8424.  
  8425.  
  8426.  
  8427.  
  8428.                                          120
  8429.  
  8430.  
  8431.  
  8432.  
  8433.  
  8434.  
  8435.  
  8436.  
  8437.         ---------------------------------------------------------------------
  8438.         #CLEARBOX                                                 Input/Output
  8439.         ---------------------------------------------------------------------
  8440.         Function  Clears the most recent box placed on the screen.
  8441.  
  8442.         Syntax    #CLEARBOX
  8443.  
  8444.         Remarks   This command  clears the last  box placed on the  screen (by
  8445.                   #BOX or #WINDOW)  and replaces the data which  was under it.
  8446.                   This command only has an effect  if #BOX or #WINDOW set  the
  8447.                   save option to 1 (meaning to save the screen contents).
  8448.  
  8449.         Example   !This line draws a box on the screen
  8450.                   #BOX 10,10,40,15 1 "My Box"
  8451.                   !This line clears the box off the screen
  8452.                   #CLEARBOX
  8453.  
  8454.  
  8455.         ---------------------------------------------------------------------
  8456.         #DEC                                                              Data
  8457.         ---------------------------------------------------------------------
  8458.         Function  Decrements a cell's value.
  8459.  
  8460.         Syntax    #DEC cellname x
  8461.  
  8462.         Remarks   This command decrements  (reduces) the value in  cellname by
  8463.                   x.  If you don't supply x, then a value of 1 is assumed.
  8464.  
  8465.         Example   #DEC B5 6.05
  8466.                   decrements the value in B5 by 6.05
  8467.  
  8468.  
  8469.  
  8470.         ---------------------------------------------------------------------
  8471.         #DELAY                                                    Input/Output
  8472.         ---------------------------------------------------------------------
  8473.         Function  Generates a delay in your application program.
  8474.  
  8475.         Syntax    #DELAY milliseconds
  8476.  
  8477.         Remarks   This  command  allows   you  to  insert  delays   into  your
  8478.                   application programs.
  8479.  
  8480.         Example   #DELAY 1000
  8481.                   pauses for one second (1000 milliseconds)
  8482.  
  8483.  
  8484.  
  8485.  
  8486.  
  8487.  
  8488.  
  8489.  
  8490.  
  8491.  
  8492.  
  8493.  
  8494.  
  8495.  
  8496.                                          121
  8497.  
  8498.  
  8499.  
  8500.  
  8501.  
  8502.  
  8503.  
  8504.  
  8505.         ---------------------------------------------------------------------
  8506.         #DELETE                                                           File
  8507.         ---------------------------------------------------------------------
  8508.         Function  Deletes a file from the disk.
  8509.  
  8510.         Syntax    #DELETE filename
  8511.  
  8512.         Remarks   This  command  will delete  filename  from the  disk  (if it
  8513.                   exists).
  8514.  
  8515.         Example   #DELETE myfile.dat
  8516.                   erases the file named myfile.dat from the current directory.
  8517.  
  8518.  
  8519.         ---------------------------------------------------------------------
  8520.         #DOS                                                          External
  8521.         ---------------------------------------------------------------------
  8522.         Function  Runs a DOS command or  external program as if it were  being
  8523.                   run from the DOS prompt.
  8524.  
  8525.         Syntax    #DOS command
  8526.  
  8527.         Remarks   This command allows  you to perform a  DOS command or run  a
  8528.                   program just  as if you  had typed  the command  at the  DOS
  8529.                   prompt.   There must be  enough memory available to  run the
  8530.                   program or the command will be ignored.
  8531.  
  8532.         Example   #DOS "dir *.INS"
  8533.                   displays a directory of all InstaCalc data files
  8534.  
  8535.  
  8536.         ---------------------------------------------------------------------
  8537.         #EDIT                                                     Input/Output
  8538.         ---------------------------------------------------------------------
  8539.         Function  Prompts and allows editing of a cell's contents.
  8540.  
  8541.         Syntax    #EDIT x,y cellname len prompt
  8542.  
  8543.         Remarks   This command  displays prompt at position x,y on the screen,
  8544.                   followed by the contents of  cellname.  You are then allowed
  8545.                   to edit the contents of cellname.  len is the maximum number
  8546.                   of  characters which is displayed and  which you are allowed
  8547.                   to enter or edit.
  8548.  
  8549.         Example   #EDIT 40,4 a1 6 "Invoice #"
  8550.  
  8551.                   displays Invoice # at position 40,4 on the screen,  followed
  8552.                   by the  contents of cell  A1.  You  will only be  allowed to
  8553.                   enter 6 characters (or less).
  8554.  
  8555.  
  8556.  
  8557.  
  8558.  
  8559.  
  8560.  
  8561.  
  8562.  
  8563.  
  8564.                                          122
  8565.  
  8566.  
  8567.  
  8568.  
  8569.  
  8570.  
  8571.  
  8572.  
  8573.         ---------------------------------------------------------------------
  8574.         #EDITERR                                                     Debugging
  8575.         ---------------------------------------------------------------------
  8576.         Function  Enables or disables automatic editing of errors.
  8577.  
  8578.         Syntax    #EDITERR 0/1
  8579.  
  8580.         Remarks   When InstaCalc  encounters an  error in  an application,  it
  8581.                   displays an  error message, then  calls up the macro  in the
  8582.                   macro editor.   The cursor is placed  on the line  where the
  8583.                   error occurred so that you can fix the problem.
  8584.  
  8585.                   There may be times when you do not want InstaCalc to call up
  8586.                   the application for editing.  #EDITERR allows you to disable
  8587.                   this feature.
  8588.  
  8589.         Example   #EDITERR 0
  8590.                   disables automatic error editing
  8591.  
  8592.  
  8593.  
  8594.         ---------------------------------------------------------------------
  8595.         #EXIT                                                          Control
  8596.         ---------------------------------------------------------------------
  8597.         Function  Ends the application program.
  8598.  
  8599.         Syntax    #EXIT
  8600.  
  8601.         Remarks   This command terminates the current application program.  If
  8602.                   the current  program was called by another program using the
  8603.                   #RUN  command, then  control  is  returned  to  the  calling
  8604.                   program.
  8605.  
  8606.  
  8607.         ---------------------------------------------------------------------
  8608.         #FOR / #NEXT                                                   Control
  8609.         ---------------------------------------------------------------------
  8610.         Function  Repeat commands a fixed number of times.
  8611.  
  8612.         Syntax    #FOR cellname start end step
  8613.                     {some commands}
  8614.                   #NEXT 
  8615.  
  8616.         Remarks   This  command creates  a loop  which  can perform  a set  of
  8617.                   commands a certain number  of times.  The value of  start is
  8618.                   placed in  cellname.  and  as long as the  value of cellname
  8619.                   does  not exceed  the  value  of end,  the  set of  commands
  8620.                   between the #FOR  and #NEXT command will be  executed.  Each
  8621.                   time the  #NEXT command branches  back to the  #FOR command,
  8622.                   the  value  in  cellname will  be  incremented  by step  and
  8623.                   compared with end.
  8624.  
  8625.                   It is also legal  for step to be a negative  value, in which
  8626.                   case the  #FOR loop will  continue until start is  less than
  8627.                   end.
  8628.  
  8629.                   The value in cellname may be used anywhere within the loop.
  8630.  
  8631.  
  8632.                                          123
  8633.  
  8634.  
  8635.  
  8636.  
  8637.  
  8638.  
  8639.  
  8640.  
  8641.         Example   #FOR a1 1 7 2
  8642.                     #OUTPUT 1,[a1] "Hello World"
  8643.                   #NEXT
  8644.  
  8645.                   Writes the string "Hello World" on the screen on lines 1, 3,
  8646.                   5, and 7.
  8647.  
  8648.  
  8649.         ---------------------------------------------------------------------
  8650.         #GOTO                                                          Control
  8651.         ---------------------------------------------------------------------
  8652.         Function  Branches to another part of the program.
  8653.  
  8654.         Syntax    #GOTO label
  8655.  
  8656.         Remarks   This command causes the program to continue execution at the
  8657.                   given label.   The label may  be either before or  after the
  8658.                   #GOTO, but it must be in the same program file.
  8659.  
  8660.         Example   #GOTO MyLabel
  8661.                   #OUTPUT 10,10 "Don't print this"
  8662.  
  8663.                   :MyLabel
  8664.                   #OUTPUT 10,10 "Print this instead"
  8665.  
  8666.  
  8667.         ---------------------------------------------------------------------
  8668.         #IF / #ELSE / #ENDIF                                           Control
  8669.         ---------------------------------------------------------------------
  8670.         Function  Executes a set of commands if a condition is true.
  8671.  
  8672.         Syntax    #IF boolean formula
  8673.                     {some commands}
  8674.                   #ELSE
  8675.                     {some commands}
  8676.                   #ENDIF
  8677.  
  8678.         Remarks   This command  evaluates boolean formula, and if  it is true,
  8679.                   continues  executing  commands  until  #ELSE  or  #ENDIF  is
  8680.                   reached.  All commands between  the #ELSE and #ENDIF will be
  8681.                   ignored.
  8682.  
  8683.                   If  boolean formula is false, then the program branches from
  8684.                   the #IF to the #ELSE command  (if there is one) and executes
  8685.                   the commands between #ELSE and #ENDIF.
  8686.  
  8687.         Example   #IF a1=1 
  8688.                     #OUTPUT 10,10 "It's equal to one" 
  8689.                   #ELSE 
  8690.                     #OUTPUT 10,10 "It's not equal to one"
  8691.                   #ENDIF 
  8692.  
  8693.                   If the value of cell A1 equals one, then the line It's equal
  8694.                   to one will  be output, otherwise the line It's not equal to
  8695.                   one will be output.
  8696.  
  8697.  
  8698.  
  8699.  
  8700.                                          124
  8701.  
  8702.  
  8703.  
  8704.  
  8705.  
  8706.  
  8707.  
  8708.  
  8709.         ---------------------------------------------------------------------
  8710.         #INC                                                              Data
  8711.         ---------------------------------------------------------------------
  8712.         Function  Increments a cell's value.
  8713.  
  8714.         Syntax    #INC cellname x
  8715.  
  8716.         Remarks   This command increments (increases) the value of cellname by
  8717.                   x.  If you do not specify x, then a value of 1 is assumed.
  8718.  
  8719.         Example   #INC B5 6.05
  8720.                   increments the value in B5 by 6.05
  8721.  
  8722.  
  8723.         ---------------------------------------------------------------------
  8724.         #INPUT                                                    Input/Output
  8725.         ---------------------------------------------------------------------
  8726.         Function  Prompts for and accepts input from the keyboard.
  8727.  
  8728.         Syntax    #INPUT x,y cellname len prompt
  8729.  
  8730.         Remarks   This command displays prompt at  position x,y on the screen.
  8731.                   You  are then  allowed  to  enter some  text  which will  be
  8732.                   entered  into  cellname.    len  is  the  maximum number  of
  8733.                   characters which you are allowed to enter.
  8734.  
  8735.         Example   #INPUT 40,4 a1 6 "Enter the sales for May "
  8736.  
  8737.                   displays Enter  the sales  for May at  position 40,4  on the
  8738.                   screen.  You will only be allowed to enter 6  characters (or
  8739.                   less).  Whatever you type will be entered into cell A1.
  8740.  
  8741.  
  8742.         ---------------------------------------------------------------------
  8743.         #KEY                                                      Input/Output
  8744.         ---------------------------------------------------------------------
  8745.         Function  Prompts for and reads a keystroke.
  8746.  
  8747.         Syntax    #KEY x,y cellname prompt maskchars
  8748.  
  8749.         Remarks   This command displays prompt at position  x,y, and waits for
  8750.                   you to  press a  key.  The  #KEY command  will automatically
  8751.                   place the  keystroke pressed  into cellname.   The  returned
  8752.                   keystroke  will be  a letter,  number,  or symbol  if it  is
  8753.                   regular ASCII.   If it  is a special  key like a  control or
  8754.                   alternate sequence, cursor key, or function key,  it will be
  8755.                   in angle brackets like this:  <Enter>, <PgUp>, <F1> or <^S>.
  8756.  
  8757.                   maskchars is an optional argument  which allows you to force
  8758.                   #KEY  to  accept  only certain  characters.    If you  leave
  8759.                   maskchars blank, then #KEY will  accept any key pressed.  If
  8760.                   maskchars  is a character (or list of characters), then #KEY
  8761.                   will  only accept  those characters  (upper  and lower  case
  8762.                   letters are treated as the same character).
  8763.  
  8764.         Example   #KEY 10,10 a1 "Continue?:" y n
  8765.  
  8766.  
  8767.  
  8768.                                          125
  8769.  
  8770.  
  8771.  
  8772.  
  8773.  
  8774.  
  8775.  
  8776.  
  8777.                   displays Continue?: at screen position 10,10, waits for y or
  8778.                   n to be pressed, and then places the name of the key pressed
  8779.                   in cell A1.
  8780.  
  8781.  
  8782.  
  8783.         ---------------------------------------------------------------------
  8784.         #LOCATE                                                           Data
  8785.         ---------------------------------------------------------------------
  8786.         Function  Moves the cell pointer relatively.
  8787.  
  8788.         Syntax    #LOCATE column row
  8789.  
  8790.         Remarks   This command allows you to  move the cell pointer by several
  8791.                   rows and columns at a time.  column is the number of columns
  8792.                   you want to move to the right, and row is the number of rows
  8793.                   you  want to  move down.   You  may set  row or column  to a
  8794.                   negative value to move in the opposite direction, or to 0 if
  8795.                   you don't want to move either direction.
  8796.  
  8797.         Example   #LOCATE 1 -2 3
  8798.                   moves the cell pointer right 1 column and up 2 rows.
  8799.  
  8800.  
  8801.         ---------------------------------------------------------------------
  8802.         #MENU                                                     Input/Output
  8803.         ---------------------------------------------------------------------
  8804.         Function  Creates and displays a menu on the screen.
  8805.  
  8806.         Syntax    #MENU x,y cellname helpline title
  8807.                   #HMENU x,y cellname helpline title
  8808.  
  8809.         Remarks   These  commands (along with the #MENUITEM command) allow you
  8810.                   to create and display customized menus from your application
  8811.                   programs (#MENU generates a vertical menu, #HMENU  generates
  8812.                   a horizontal menu).   The menu will be  placed on the screen
  8813.                   at position x,y, and title will be placed at the top  of the
  8814.                   menu.  Each item to be displayed  in the menu are defined by
  8815.                   #MENUITEM commands following the  #MENU  command.  The  help
  8816.                   line  for each item  will be  placed on  the screen  on line
  8817.                   number helpline.   When  the user selects  an item  from the
  8818.                   menu,  InstaCalc will enter  the item number  into cellname.
  8819.                   For example, if the user selects the 3rd item from the menu,
  8820.                   InstaCalc will enter the value 3 into cellname.  If the user
  8821.                   escapes from the  menu by pressing the  <Esc> key, InstaCalc
  8822.                   will enter the value 0 into cellname.
  8823.  
  8824.         Example   #MENU 20,10 A1 1 "My Menu"
  8825.                     #MENUITEM "Add" "Add a record"
  8826.                     #MENUITEM "Delete" "Delete a record"
  8827.                     #MENUITEM "Quit" "Exit from menu"
  8828.  
  8829.                   These lines  create and  display a menu  with 3  items; Add,
  8830.                   Delete, and Quit.  If Delete  is selected, then the value  2
  8831.                   is entered into cell A1.
  8832.  
  8833.  
  8834.  
  8835.  
  8836.                                          126
  8837.  
  8838.  
  8839.  
  8840.  
  8841.  
  8842.  
  8843.  
  8844.  
  8845.         ---------------------------------------------------------------------
  8846.         #MENUITEM                                                 Input/Output
  8847.         ---------------------------------------------------------------------
  8848.         Function  Defines an item and its help line in a menu.
  8849.  
  8850.         Syntax    #MENUITEM item help
  8851.  
  8852.         Remarks   This command defines one  of the items in a menu.   item and
  8853.                   help are  both text  strings enclosed in  quotes.   item and
  8854.                   help can also be cell  references or text formulas  enclosed
  8855.                   in square  brackets to  allow  you to  build menu  selection
  8856.                   items on the fly.
  8857.  
  8858.  
  8859.         ---------------------------------------------------------------------
  8860.         #OUTPUT                                                   Input/Output
  8861.         ---------------------------------------------------------------------
  8862.         Function  Displays text on the screen.
  8863.  
  8864.         Syntax    #OUTPUT x,y line
  8865.  
  8866.         Remarks   This command allows  your application program to  write text
  8867.                   to the screen.   #OUTPUT will display  line at column x  and
  8868.                   row y on the screen.  x must be in the range 1  to 80, and y
  8869.                   must be in the range 1 to 25.
  8870.  
  8871.         Example   #OUTPUT 40,4 "Hi there" 
  8872.                   #OUTPUT 40,4 [A1]
  8873.                   #OUTPUT [A2],10 "Another line"
  8874.  
  8875.  
  8876.  
  8877.  
  8878.  
  8879.  
  8880.  
  8881.  
  8882.  
  8883.  
  8884.  
  8885.  
  8886.  
  8887.  
  8888.  
  8889.  
  8890.  
  8891.  
  8892.  
  8893.  
  8894.  
  8895.  
  8896.  
  8897.  
  8898.  
  8899.  
  8900.  
  8901.  
  8902.  
  8903.  
  8904.                                          127
  8905.  
  8906.  
  8907.  
  8908.  
  8909.  
  8910.  
  8911.  
  8912.  
  8913.         ---------------------------------------------------------------------
  8914.         #PASSWORD                                                 Input/Output
  8915.         ---------------------------------------------------------------------
  8916.         Function  Prompts for and accepts a password.
  8917.  
  8918.         Syntax    #PASSWORD x,y cellname len prompt
  8919.  
  8920.         Remarks   This  command is  exactly the  same as  the  #INPUT command,
  8921.                   except  that keystrokes which  you enter are  not displayed.
  8922.                   This command displays prompt at position x,y  on the screen.
  8923.                   You  are then  allowed  to  enter some  text  which will  be
  8924.                   entered  into cellname.    len  is  the  maximum  number  of
  8925.                   characters which you are allowed to enter.
  8926.  
  8927.         Example   #PASSWORD 40,4 a1 6 "Enter the magic word "
  8928.  
  8929.                   displays Enter  the  magic  word at  position  40,4  on  the
  8930.                   screen,  followed by  6 box  characters.   You will  only be
  8931.                   allowed to enter 6 characters (or less), and you will not be
  8932.                   able to see  the actual characters that you  type.  Whatever
  8933.                   you type will be entered into cell A1.
  8934.  
  8935.  
  8936.         ---------------------------------------------------------------------
  8937.         #PRINT / #PRINTLN                                         Input/Output
  8938.         ---------------------------------------------------------------------
  8939.         Function  Sends data to your printer.
  8940.  
  8941.         Syntax    #PRINT line
  8942.                   #PRINTLN line
  8943.  
  8944.         Remarks   These two commands  allow your program to send  line to your
  8945.                   printer.    The  only  difference  between  the  #PRINT  and
  8946.                   #PRINTLN commands is that the #PRINTLN command sends a CR/LF
  8947.                   command  to the printer after it  has sent line.  This means
  8948.                   that you can use #PRINT several times in a row to print data
  8949.                   on the same line.   If you want to just send a blank line to
  8950.                   the printer, you can simply use the command #PRINTLN without
  8951.                   any argument.
  8952.  
  8953.                   If you want  to print numbers,  they must be converted  to a
  8954.                   string first.  The best way  to do this is with the  @FORMAT
  8955.                   function, which  allows you to  format the number in  any of
  8956.                   InstaCalc's formats.
  8957.  
  8958.         Example   #PRINT "Hi there"        #PRINTLN "Hi there"
  8959.                   #PRINT [A1]              #PRINTLN [A1]
  8960.  
  8961.  
  8962.         ---------------------------------------------------------------------
  8963.         #REPEAT / #UNTIL                                               Control
  8964.         ---------------------------------------------------------------------
  8965.         Function  Repeat some commands until a condition exists.
  8966.  
  8967.         Syntax    #REPEAT
  8968.                     {some commands}
  8969.                   #UNTIL boolean formula
  8970.  
  8971.  
  8972.                                          128
  8973.  
  8974.  
  8975.  
  8976.  
  8977.  
  8978.  
  8979.  
  8980.  
  8981.         Remarks   This command  repeats a command  or set of commands  until a
  8982.                   condition becomes  true.   InstaCalc  executes the  commands
  8983.                   after  the  #REPEAT  until the  #UNTIL  command  is reached.
  8984.                   InstaCalc then  evaluates boolean formula, and branches back
  8985.                   to the #REPEAT command  if it is false.  boolean formula may
  8986.                   be any legal InstaCalc formula which returns a TRUE or FALSE
  8987.                   value.
  8988.  
  8989.         Example   #REPEAT
  8990.                     #INC a1
  8991.                   #UNTIL a1>30
  8992.  
  8993.                   The contents of cell A1 is incremented until the contents of
  8994.                   A1 is greater than 30.
  8995.  
  8996.  
  8997.         ---------------------------------------------------------------------
  8998.         #RESTORE                                                  Input/Output
  8999.         ---------------------------------------------------------------------
  9000.         Function  Restores the InstaCalc screen.
  9001.  
  9002.         Syntax    #RESTORE
  9003.  
  9004.         Remarks   This command  erases all  boxes and  restores the  InstaCalc
  9005.                   screen.   This  command should  be  used by  all application
  9006.                   programs before exiting.
  9007.  
  9008.         Example   #BOX 1,1,80,25 0 "Main Title"
  9009.                   #WAIT 10,10 "Press any key to continue"
  9010.                   #RESTORE
  9011.  
  9012.                   These lines draw a full screen box,  wait for you to press a
  9013.                   key, then restores the InstaCalc screen.
  9014.  
  9015.  
  9016.  
  9017.         ---------------------------------------------------------------------
  9018.         #RUN                                                          External
  9019.         ---------------------------------------------------------------------
  9020.         Function  Runs an external InstaCalc application as a subroutine.
  9021.  
  9022.         Syntax    #RUN application
  9023.  
  9024.         Remarks   This command allows  you to start running  another InstaCalc
  9025.                   application file  (.MAC) as  a subroutine.   The  other .MAC
  9026.                   file  will be  loaded into  memory and  executed.   When the
  9027.                   other .MAC file is finished running, it will be removed from
  9028.                   memory,  and control will  return to the  program containing
  9029.                   the #RUN command.
  9030.  
  9031.         Example   #RUN myprog
  9032.                   runs the InstaCalc  program "MYPROG.MAC".   When  MYPROG.MAC
  9033.                   has  finished running,  control  will  be  returned  to  the
  9034.                   current application at the line following the #RUN command.
  9035.  
  9036.  
  9037.  
  9038.  
  9039.  
  9040.                                          129
  9041.  
  9042.  
  9043.  
  9044.  
  9045.  
  9046.  
  9047.  
  9048.  
  9049.         ---------------------------------------------------------------------
  9050.         #SETCOLOR                                                 Input/Output
  9051.         ---------------------------------------------------------------------
  9052.         Function  Sets the colors which the various I/O commands will use.
  9053.  
  9054.         Syntax    #SETCOLOR item background foreground
  9055.  
  9056.         Remarks   This command allows you to set and change the various colors
  9057.                   which other  I/O commands  use when  writing to  the screen.
  9058.                   item is a value corresponding  to a different item which can
  9059.                   be displayed:
  9060.  
  9061.                   item DISPLAY
  9062.                   1    Frame around the menu
  9063.                   2    Title of the menu
  9064.                   3    Main body of the menu
  9065.                   4    Moving bar of the menu
  9066.                   5    Highlighted select character in the menu
  9067.                   6    Help line for the menu
  9068.                   7    Prompt for #EDIT, #INPUT, #KEY
  9069.                   8    Editing/output field
  9070.                   9    Frame around the window
  9071.                   10   The title of the window
  9072.                   11   The body of the window
  9073.  
  9074.                   background  and foreground are  values corresponding  to the
  9075.                   background and foreground colors to use:
  9076.  
  9077.                   0=Black             8=Dark Gray
  9078.                   1=Blue              9=Light Blue
  9079.                   2=Green             10=Light Green
  9080.                   3=Cyan              11=Light Cyan
  9081.                   4=Red               12=Light Red
  9082.                   5=Magenta           13=Light Magenta
  9083.                   6=Brown             14=Yellow
  9084.                   7=Light Gray        15=White
  9085.  
  9086.         Example   #SETCOLOR 4 1 15
  9087.                   will set the  color of the moving bar of a menu created with
  9088.                   #MENU to white on blue
  9089.  
  9090.  
  9091.  
  9092.         ---------------------------------------------------------------------
  9093.         #STEP                                                        Debugging
  9094.         ---------------------------------------------------------------------
  9095.         Function  Enables or disables single stepping.
  9096.  
  9097.         Syntax    #STEP 0/1
  9098.  
  9099.         Remarks   This single  command allows you  to single  step through  an
  9100.                   application,  set conditional  breakpoints, and  inspect and
  9101.                   edit cells while your application is running.
  9102.  
  9103.                   When the command #STEP 1 is encountered in a program, single
  9104.                   stepping is enabled.  When you are  in single step mode, the
  9105.                   bottom  line of  the screen  will display the  prompt "SS:",
  9106.  
  9107.  
  9108.                                          130
  9109.  
  9110.  
  9111.  
  9112.  
  9113.  
  9114.  
  9115.  
  9116.  
  9117.                   along with the next line  of the application to be executed.
  9118.                   You must press  a key (the  space bar is  good for this)  to
  9119.                   execute each line  of the program.  This  allows you to view
  9120.                   the operation of your program one line at a time rather than
  9121.                   have it whiz through at breakneck speed.
  9122.  
  9123.                   At  any point  while you  are  single stepping  through your
  9124.                   application  you may press <Ctrl><F2>.   This key will bring
  9125.                   up a  menu of  options which  allow  you to  view or  change
  9126.                   values of cells which your application might be using.
  9127.  
  9128.                   When the command #STEP 0 is encountered in a program, single
  9129.                   stepping  is  disabled  and execution  of  the  program will
  9130.                   continue normally.
  9131.  
  9132.                   Since  single stepping can be turned on  or off at any point
  9133.                   in your  program, #STEP  can be used  to set  breakpoints in
  9134.                   your application.  Simply put a #STEP 1 command at any point
  9135.                   of your program where you want to break from your program.
  9136.  
  9137.                   If  you want  to set  a conditional  break point  (where the
  9138.                   program will  stop only  when a  certain condition  exists),
  9139.                   then use a formula argument for #STEP instead of just 1.
  9140.  
  9141.         Example   #STEP 1
  9142.                   turns on single stepping at any point in the program.
  9143.  
  9144.                   #STEP [A5>3]
  9145.                   turns on single stepping only if the value  in A5 is greater
  9146.                   than 3.
  9147.  
  9148.  
  9149.         ---------------------------------------------------------------------
  9150.         #UPDATE                                                   Input/Output
  9151.         ---------------------------------------------------------------------
  9152.         Function  Enables or disables screen updating.
  9153.  
  9154.         Syntax    #UPDATE 0/1
  9155.  
  9156.         Remarks   This command toggles  InstaCalc screen updating on  and off.
  9157.                   This   command  is  useful  to  keep  screen  updating  from
  9158.                   overwriting  boxes and  windows  which your  application has
  9159.                   placed on screen.   #UPDATE 0 disables screen  updating, and
  9160.                   #UPDATE 1 enables  screen updating.  #UPDATE can  be used at
  9161.                   any point in the application to turn updating on or off.
  9162.  
  9163.         Example   #UPDATE 0
  9164.                   disables screen updating.
  9165.  
  9166.  
  9167.  
  9168.  
  9169.  
  9170.  
  9171.  
  9172.  
  9173.  
  9174.  
  9175.  
  9176.                                          131
  9177.  
  9178.  
  9179.  
  9180.  
  9181.  
  9182.  
  9183.  
  9184.  
  9185.         ----------------------------------------------------------------------
  9186.         #WAIT                                                     Input/Output
  9187.         ----------------------------------------------------------------------
  9188.         Function  Prompt and wait for a key press.
  9189.  
  9190.         Syntax    #WAIT x,y prompt
  9191.  
  9192.         Remarks   This command  displays prompt  at screen  position x,y,  and
  9193.                   then waits for  you to press a key.  This command is similar
  9194.                   to the #KEY command, except  that the keystroke is not saved
  9195.                   for processing.
  9196.  
  9197.         Example   #WAIT 10,10 "Press a key to continue"
  9198.                   displays Press a key to continue and waits for you to  press
  9199.                   a key.
  9200.  
  9201.  
  9202.  
  9203.         ---------------------------------------------------------------------
  9204.         #WHILE / #ENDWHILE                                             Control
  9205.         ---------------------------------------------------------------------
  9206.         Function  Repeat some commands while a condition exists.
  9207.  
  9208.         Syntax    #WHILE boolean formula
  9209.                     {some commands}
  9210.                   #ENDWHILE 
  9211.  
  9212.         Remarks   This command repeat a command or  set of commands as long as
  9213.                   boolean formula is  TRUE.  If boolean formula  is FALSE when
  9214.                   the  #WHILE  is  first reached,  the  commands  will  not be
  9215.                   executed at all.
  9216.  
  9217.                   The #ENDWHILE command will cause execution to branch back to
  9218.                   #WHILE so that boolean formula may be tested again.
  9219.  
  9220.         Example   #WHILE a1<10 
  9221.                     #INC a1 1.3 
  9222.                   #ENDWHILE
  9223.  
  9224.                   While the value in cell  a1 is less than 10, InstaCalc  will
  9225.                   increment the value of cell a1 by 1.3.
  9226.  
  9227.  
  9228.         ---------------------------------------------------------------------
  9229.         #WINDOW                                                   Input/Output
  9230.         ---------------------------------------------------------------------
  9231.         Function  Displays a window on the screen.
  9232.  
  9233.         Syntax    #WINDOW x1,y1 save title
  9234.  
  9235.         Remarks   This command is a special version of the #BOX command.  This
  9236.                   command,  along with  the #WINTEXT  command,  allows you  to
  9237.                   easily create text  windows without having to  calculate how
  9238.                   wide and tall the box  should be, or what screen coordinates
  9239.                   to use to display text in the box.  This command  displays a
  9240.                   box on the  screen.   The upper  left corner of  the box  is
  9241.                   located at  screen position x1,y1,  and the position  of the
  9242.  
  9243.  
  9244.                                          132
  9245.  
  9246.  
  9247.  
  9248.  
  9249.  
  9250.  
  9251.  
  9252.  
  9253.                   lower  right corner of  the box  is calculated  by InstaCalc
  9254.                   based  on the  number and length  of the  following #WINTEXT
  9255.                   commands.    save  determines  whether InstaCalc  saves  the
  9256.                   contents of the  screen under the box  before displaying it.
  9257.                   If save  equals 0, then  the screen contents are  not saved.
  9258.                   If save  equals 1, then  the screen contents are  saved, and
  9259.                   can be restored using the #CLEARBOX command.
  9260.  
  9261.         Example   #WINDOW 10,5 1 "My Window"
  9262.                     #WINTEXT "Here is some text"
  9263.                     #WINTEXT ["Name: "+a1]
  9264.                     #WINTEXT "Some more text"
  9265.  
  9266.                   These lines will create  a box with  the title My Window  at
  9267.                   position 10,5 on the screen.   The box will be  large enough
  9268.                   to hold 3 lines of text, and wide enough to hold  the widest
  9269.                   of the 3 lines.
  9270.  
  9271.  
  9272.  
  9273.         ---------------------------------------------------------------------
  9274.         #WINTEXT                                                  Input/Output
  9275.         ---------------------------------------------------------------------
  9276.         Function  Displays text in a window.
  9277.  
  9278.         Syntax    #WINTEXT line
  9279.  
  9280.         Remarks   This  command displays line in the currently defined window.
  9281.                   #WINDOW will automatically adjust the size of the window  to
  9282.                   hold the width of line.
  9283.  
  9284.  
  9285.  
  9286.  
  9287.  
  9288.  
  9289.  
  9290.  
  9291.  
  9292.  
  9293.  
  9294.  
  9295.  
  9296.  
  9297.  
  9298.  
  9299.  
  9300.  
  9301.  
  9302.  
  9303.  
  9304.  
  9305.  
  9306.  
  9307.  
  9308.  
  9309.  
  9310.  
  9311.  
  9312.                                          133
  9313.  
  9314.  
  9315.  
  9316.  
  9317.  
  9318.  
  9319.  
  9320.  
  9321.         INDEX
  9322.  
  9323.  
  9324.           @functions  63                        Delete records  57
  9325.           1-2-3  39, 41                         Deleting
  9326.           Absolute cell reference  12                columns  33
  9327.           Addition  10                               rows  33
  9328.           Anchor  13                            DIF  40, 41
  9329.           And  10                               Directory  36, 75
  9330.           Application  112                      Distribution  57
  9331.                breaking from  23, 120           Division  10
  9332.                debugging    22,   123,          Dollar format  16
  9333.                     130                         Editing  8
  9334.                editor  19, 59                   Editor  19
  9335.                running  61, 113                 EGA  23
  9336.           Arguments  63, 117                    End key  7
  9337.           Arrow keys  7                         Erasing
  9338.           ASCII  40, 41                              blocks  28
  9339.           Asterisk  17                               cells  25
  9340.           Auditing  58                               rows  33
  9341.           Bin  57                                    worksheet  31
  9342.           Block name  11, 13, 21, 30            Exiting  62
  9343.           Blocks, defining  12                  Exponentiation  10
  9344.           Branching commands  118               Export  20
  9345.           Break point  131                      Exporting
  9346.           CALC  34                                   1-2-3  41
  9347.           Cell  5, 12                                ASCII  41
  9348.           Cell pointer  6                            dBase  41
  9349.           CIRC  12                                   DIF  41
  9350.           Circular reference  12                Extract  39
  9351.           Colors  4, 130                        Extract records  57
  9352.           Column  width   5,  17,  25,          Feature List  3
  9353.                     28, 31                      File Manager  15, 35, 36
  9354.           Combining files  38                   Financial functions  64
  9355.           Comma  16                             Fixed format  16
  9356.           Command line  3                       Formatting  cells   16,  25,
  9357.           Commands  24                                    27, 31
  9358.           Comparison  10                        Formulas  10
  9359.           Configuration  3                      Frequency distribution  57
  9360.           Converting   from    earlier          Function keys  21
  9361.                     versions  4                 Functions  63
  9362.           Copying                               General format  16
  9363.                blocks  29                       Goalseek  55
  9364.                cell  26                         GoTo  21
  9365.           Criteria  39, 56                      Graphing  18, 47
  9366.           Currency format  16                   Header  45
  9367.           Customize  3                          Help  6, 21
  9368.           Cut  19                               Hidden
  9369.           Data entry  8, 23                          cells  17
  9370.           Data functions  65                         columns  25
  9371.           Database  53                          Highlighting blocks  12
  9372.           Date formats  17                      ICE  112
  9373.           Date functions  64                    Import  19
  9374.           DBase  39, 41                         Importing
  9375.           Decimal places  16                         1-2-3  39
  9376.           Defaults  3                                ASCII  40
  9377.           Defining blocks  12                        dBase  39
  9378.  
  9379.  
  9380.                                          134
  9381.  
  9382.  
  9383.  
  9384.  
  9385.  
  9386.  
  9387.  
  9388.  
  9389.                DIF  40                               text  17, 43-47
  9390.           Inserting                             Programming  117
  9391.                columns  32                      Protection  27, 30, 33
  9392.                rows  32                         Query  56
  9393.           InstaCalc            Command          Quitting  62
  9394.                     Environment  112            REC  18
  9395.           Installing InstaCalc  2               Recalculation  34
  9396.           Justify  8                            Recording macros  18, 23
  9397.           License  1                            References  12
  9398.           Linking                               Registration  2
  9399.                   42                            Relative cell reference  12
  9400.           Locking                               Replaying macros  18
  9401.                cells  33                        Retrieving files  35, 38
  9402.                files  35                        Saving files  35, 39
  9403.                titles  33                       Scaling  48
  9404.           Logical functions  65                 Scientific format  17
  9405.           Lookup tables  82, 109                Search & replace  21
  9406.           Looping commands  118                 Setup strings  27
  9407.           Lotus  39, 41                         Shell to DOS  61
  9408.           Macro  112                            Single step  130
  9409.                @functions  65                   Sort  51
  9410.                breaking from  23, 120           Statistical functions  64
  9411.                debugging     22,  123,          Status  23
  9412.                     130                         String functions  65
  9413.                editor  19, 59                   Subroutines  118
  9414.                recorder  18, 23                 Subtraction  10
  9415.                running  61, 113                 Switches  3
  9416.           Map view  58                          Text  8
  9417.           Margins  45, 47                       Text editor  19
  9418.           Mark  23                              Text functions  65
  9419.           Mask  23, 36                          Time formats  17
  9420.           Math functions  64                    Time functions  64
  9421.           Matrix  55                            Title locking  33
  9422.           Memory  23, 89                        Titles  48
  9423.           Memory resident  2                    ToMark  23
  9424.           Menu  24                              Trace  58
  9425.           Mouse  6, 7, 14                       Transpose  56
  9426.           Movement  6                           Trigonometry functions  64
  9427.           Moving                                TSR  2
  9428.                blocks  29                       VGA  23
  9429.                cell  27                         Window  132
  9430.           Multiplication  10                    WK1  39, 41
  9431.           Named blocks  29                      WKS  39, 41
  9432.           Not  10                               WordPerfect  3
  9433.           Numbers  8                            Worksheet  5
  9434.           Operating system  61                  Xtract  39
  9435.           Operators  10                         Zero suppression  34
  9436.           Or  10
  9437.           Order form  2
  9438.           Page number  45, 46
  9439.           Password  35, 128
  9440.           Paste  20
  9441.           Percent format  16
  9442.           Point mode  11
  9443.           Pop up  2
  9444.           Precedence  11
  9445.           Printing
  9446.  
  9447.  
  9448.                                          135
  9449.  
  9450.  
  9451.  
  9452.  
  9453.  
  9454.  
  9455.  
  9456.  
  9457.  
  9458.  
  9459.  
  9460.  
  9461.  
  9462.  
  9463.  
  9464.  
  9465.  
  9466.  
  9467.  
  9468.  
  9469.  
  9470.  
  9471.  
  9472.  
  9473.  
  9474.  
  9475.  
  9476.  
  9477.  
  9478.  
  9479.  
  9480.  
  9481.  
  9482.  
  9483.  
  9484.  
  9485.  
  9486.  
  9487.  
  9488.  
  9489.  
  9490.  
  9491.  
  9492.  
  9493.  
  9494.  
  9495.  
  9496.  
  9497.  
  9498.  
  9499.  
  9500.  
  9501.  
  9502.  
  9503.  
  9504.  
  9505.  
  9506.  
  9507.  
  9508.  
  9509.  
  9510.  
  9511.  
  9512.  
  9513.  
  9514.  
  9515.  
  9516.                                          136
  9517.  
  9518.  
  9519.  
  9520.  
  9521.