CA1263191A - Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet - Google Patents

Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet

Info

Publication number
CA1263191A
CA1263191A CA000523244A CA523244A CA1263191A CA 1263191 A CA1263191 A CA 1263191A CA 000523244 A CA000523244 A CA 000523244A CA 523244 A CA523244 A CA 523244A CA 1263191 A CA1263191 A CA 1263191A
Authority
CA
Canada
Prior art keywords
cell
operator
data
spreadsheet
addressable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000523244A
Other languages
French (fr)
Other versions
CA1263191C (en
Inventor
Irene H. Hernandez
Beverly H. Machart
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of CA1263191A publication Critical patent/CA1263191A/en
Publication of CA1263191C publication Critical patent/CA1263191C/en
Expired legal-status Critical Current

Links

Abstract

ABSTRACT

An improved method for use in an interactive data processing system which includes a processor for controlling the data entered into said system from an input device and a display device which functions to display a spreadsheet shell. The shell is defined by an application program. Data is entered into said system interac-tively by an operator through the input device, such as a key-board. The method permits the operator to select a cell of the spreadsheet in accordance with the type of cursor positioning mechanism provided in the system. Once a cell is selected an editing cursor is displayed in the cell at a predetermined first entry position. As the operator enters each character of data, it is displayed in the cell, just as it was entered. The data is neither formatted or calculated if it was a formula.

When editing is complete, the operator indicates this to the system by pressing an "Accept" key which may be a dedicated key, pre-programmed key, or one of the function keys on the keyboard.
Various conventional editing actions of the data in the cell are provided, such as deleting characters and scrolling at the edge of the cell.

The conventional prompt line at the top of the spreadsheet is only displayed in response to a request by the operator.

Description

..

~3~

A METHOD FOR ASSISTING THE OPERATOR OF AN
INTERACTIVE DATA PROCESSING SYSTEM TO
ENTER DATA DIRECTLY INTO A SELECTED
CELL OF A SPREADSHEET

5 Fie~Ld of Invention This invention relates in gener~l to interac'dvP data processang systems and in par~cular to an improved method for assisting the operator o such a system m entering data into cells o a spread-sheet that is being displayed by the sys~em.

10 Background Ar~:
The term "interactive data processing system" generally describes a data processing system comp~q~ng a central proces~;ing uni:t:
which func~ions to store and process data, a disp~y screen on which informatiDn from the system is displayed to the operator, 15 and a keyboard which is used by the operator ~or ente~ing infor-mation into the system. Such systems may also include a pnnter for producing hard copy output o~ se~ected information and one or more disk storage devices which function to transfer operating system programs, appli~ion programs, and user da~a betwe n the 20 system and the diskettes which provide ol~-~ine storage o such information.

The system is interacti~e in the sense of the ~teraction that occurs between the operator and the display screen which is determ~ned prim~ly by the programs being executed by the 25 central processing ur~ which, in turn, are s~lected by the opera-tor. The signi~ance to the system cd~ keystroke data se~d by the operator ~s dependent upon the pæticular state of ~he program be~n~ exec~lted which is genera~ly manifested to the opera~or by the information d~splayed to the operator. In other words, the 30 same sequence of keys~rokes can cause the system to react difer-ently, depending on the state of the program being executed when that sequence is entered. In a similar fashion, the type and amount c~E information that ~s displayed to the operator a~Eects, to a ~arge degree, the amount of contrc~ the operator has over how a 35 particul~r processLng task is performed which, in turn, rei~lects on the overall performanc~ aE the system. The operator interface to the system is an important aspect o the overall system.
c ~

~2~

Personal computers current~y being mark~ted are prime exampl~s of interactive data proces~ng systems in which the operator interface is extremely important. An application program from a functional standpcrint, may be exc~llent, but if the procedures required of 5 the operator to interact with the app~i~ation program are not "user friendly," the application program generally will not meet with wide acceptance in the market place. N is therefore important from both a performance and marketing standp~int that this interface be - as i~riendly, logical, and natural as possib~e. These requirements 10 reflect the fact that most operators of interactive personal compu-ter systems have had a rather ~imited exposure to the technicaL
details of the system hardware and the software. In addii ion, whil~ the operator may be expected to be knowledgeable on several separate types of app]ications such as word processing, data base, 15 spreadsheets, and graphics, the average operator generally is not invciLved in running a~l app~ications every day.

Most often, one or two applications need only be run on a periodic basis so that the operator is continually faced with a reca~l prob-lem of what sequence o keystrokes are required to perform a 20 given task in this partic~ r app~ication. The more natural the sequence is~ the eacier it is for the operator not to hesitate or make an erroneous entry in performing the task. Programs that are designed wi~ these types of considerations for the operator, provoke less operator frustration and are generally considered 25 "user i~riendly."

Certain app~ications, by the nature o~ their subject matter, are more complex than others. Most opera~rs can relate easily to text proces~g type programs since they have been exposed to most of the subject matter and functions inv~ved in these types o~ appli-30 cation programs. On the other hand, the subject matter of aspreadsheet type o program is generally less familiar to the average operator so that in addition to learning the steps invcJved in the usex interface, there is an added element of learning vari-ous aspects cd~ the sub~ect matier itsel~. It is therefore even more 35 important in spreadshee~ type clf programs that detailed aspects of the user interface be addressed rom the standpaint c~E ease of learning and use. ~ !

A number c~ spreadsheet ~ype programs are current~y available for use wi~h various personal computing systems. These programs generally display a so-c~led "spreadsheet," consis~ing of a number of cc~umns and a number of rows, the cc~umns being lab~Led alpha-betica~y, from le~ to right and the rows being labeled numer~cal-ly, from top to bot~m. The width of the calumns is expressed in 5 terms of characters and in some spreadsheet programs, the width of each cc~umn can be set individua~ly by the operator~ The spreadsheet therefore comprises a number of "cPlL~, " the location c which is defined by the c~iLumn and row, e.g., A17, E9, etc.

A ce~l ~5 se~ected by the operator through the cursor positioning 10 keys on the keyboard or in some programs, may be selected by key~ng in the oe~l location, preceded by an appropr~te command from the operator, such as, "go to CxRx. " In either case, the selected ce31 is highlighted and the system is in a state to perform some type o~ editing action specified by the operator on the se~ect-15 ecl ce~l. At this paint in the program, the default function is oned data entry and the system is displaying a spreadsheet which is 80 characters wide and approximately 20 rows long (assuming a c~nventional 80 cc~umn, 24 line display). A line of information is also clisplayed at the top aE the screen, seti ing forth the particu-20 l~Lr spreadsheet details, such as i~s name Between the ti~le l;neand the ~rst row in the spreadsheet~ there is genera~ly also a dc~ta entry or prompt ~ine that identifies the celPcted ce~l and provides an area where each character of data that is entered by the operator is ~mmedic~t~Ly displayed. The data that is entered does n~t appear in the s~ectQd c~ll unt~l the operabor actua~Qs the ENTER key.

This method of entering data in a selPcted cell is found to be rustrating to operators in some ~tuations where the environment o the selectQd c~ll may ~nfluence how and where the data is 30 entQred in the celL

In other cases, it has been found that because the operator's attention must be divided between two dis~nct areas of the screen, there ~s a tendency to crea~e more errors, espe~lly for operators wh~ are not pro~nt ~ouch t~p~sts. The presen~ invention 35 avaids the above-described problem-Summar~ of Invention:
In accordance with the present invention, an improved method forentex Ing data dire~Ly into a selectQd ce~l of a spreadsheet is ATg-84-094 ~i3~

provided. The operator sel~s a cell in a conventional manner, such as by pcanting to the cel1 with cursor positioning keys or by a mouse device which is provided wi~h a select button which is pressed by the operator to advise the system of the selected cell.
5 This action selPcts the cell. An edi~g "typing" cursor is auto-matic~ly displayed at the first entry posi~on. The contents in the cell are shown exact~Ly as the operator keyed the data. That is, the data is n~ formatted or calculated. The edi~or in~Ludes a number ~ pre-establ;shed rules which are invoked by the system 10 in response to the operator's action, depending on att~ibutes that have been prev~ou~ly as~gned to the cell. These attributes may include, for examp~e, a multi-line cell or a cell in which hor- ontal scr~lling is permi tted, or an at~ibute which allows data being entered into the cell to wrap its~lf to a subsequent line m the 15 event the data exceeds the l;ne ~ngth o~ the cell.

It is therefore an object of the present invention to provide an improved method to assist the operator of an mteractive data pr~cessing system in entering data into a spreadsheet.

A further object of the present invention :is to provi~e a method 20 ror the operator o~ an interactive data processing system to enter data direc~Ly into a s~lec~d cell o~ a spreadsheet.

A further object ~ the present invention is to provide an improv-ed method for the operator of an interactive data processing system to act direc~y on the data displayed in the s~cted ce~l of 25 a spreadsheet du~ng an editing operation.

Ob~ects and advantages other than those menticned above w'll be-come apparent from the fc~lowing descr~ption when read in connec-n wi~ the drawing.

Bxi~ Descnp~on of the Draw~L:
30 Fig. 1 is a bl~k diagram of a typical mteractive data processing system in which the method ~ the present invention may be ad-vantageou~ly employedO

Fig. 2 is an ;Ilustration of a priDr art spreadsheet, iDustrating the results cE a data entry operatiDn.

~3.~

Fig. 3 is an i~lustration of a spreadsheet in which data is entered direct~Ly into a se~ted cell.

Fi~s. 4a through 4c iUustrate the selected cell from the spread-sheet of Fig. 3 during various aspects of data entry.

5 Fig. 5 iUustrates a c~l in which the height of the cell has been speciE;ed as ten lines and the data that was entered exceeded the length o~ one c~ ne.

Fig. 6 is a flow chart setting forth the steps of the method for entry and ediiing of data direct~Ly in a s~cted cell.

10 Descn~tion of the Preferred Embodiment:
Fig. 1 ilLustrates the general arrangement of a typical interactive data process~ng system. The system shown comp Lses a display device 10 for displaying information to the operator, a keyboard 11 whiL:h the oper~r uses to enter information including command 15 and data into the system, a printer 13 which func:tions to provide hard copy out~ut of information generated by the system and selected by the operator, a pair of disk~tte drives 14L and 14R
whi{:h func~on to transfer infonnation between the system and the magnetic storage diskettes that are removably assoc~a~ed with the 20 diskette drlves, and wh~ch store both program information, text in~ormation, and user data. System components 10, 11, 13, 14L, and 14R are connec~ed, as-shown in Fig. 1 to the microprocessor b~Dck 15, whic:h functi~7ns as the overaLl contrc~ for the system and interconnects the vaIious system components ~o perform their 25 speci~c function at the approp~iate time. The system of Fig. 1 also includes a modem 16 whic h functions to interconnect that system to other systems ~hrough various communication links.
,, Since the system ce Fig. 1 is adapted to process spreadsheet applications, it should he assumed that display device 10 is capable 30 of displaying an 80 character posi~on line and 24 ~ines. An auxil-iary inpu~ device 18 is ~ shown ~ Fig. 1, and is pro~rided for per~it~ng more rapid posi~ioning o~ the cursor on the screen than-m~ght be obtainable by the cursor po 3iiioning keys on the key-board 11. 5uch devices are w~ll known in the art and for purpos-35 es of this description, it will be assumed that device 18 is aconventional mouse, equipped wi~h two buttons or keys, 18A and ;3 .~ ~ l 18B. Dev~ces such as a data tablet having similar functions to the mouse could also be employed for input dev~ce 18.

Reference is now made to Fig. ~ of the drawings. This figure illustrates the general appearance of a tradi~ionaL spreadsheet 1 as 5 shown on displ~y dev~ce 10 of Fig. 1 by an app~ication program.

The spreadsheet 1 consists of a symme~icaL arrangement of cells, for example, celL 2, which form a rectangular pattern consis~ng of rows 3 and caLumns 4. The caLumns 4 are labelPd numeri alLy, from top to b~ttom. Typ;-~lly, the operator is given a fixed number of rows and coLumns, e.g., 2,048 rows by 256 calumns, of whirh onLy 20 are shown wi~hin a conventional 80 cc~umn by 24 line display. The width of a coLumn can be set individuaL~y by the operator and is de~ined in terms ~ characters. The h~ght of a row is traditionalLy the height of a qingle line (chæacter) and 15 ccmn~ be changed by the operator. Cells within the spreadsheet are referenced by the intersec~ng row and caLumn names , e . g ., A17, C18. The content of a c~il may incL~de formul~s, calcula-tions, numenc vaLues or textuaL data.
.
In addi~n to spreadsheet 1, the applicatiDn program c~so displays 20 an information ]ine 5 at the top of the screen, setdng forth the par~cu~ spreadsheet detail~, such as the name of the spread-sheet and ffle selected cell name and actual c~ll contents. F~llow-~ng the informati~n ~ine 5, there is a data entry or prompt l;ne 6 which provi~les an area where the data for the sel~ed cell is 25 entered and is immediat~Ly displayed. Line 7 is used to disp~Ly vaLid commands and infiorma~ional massages.

To s~lect a ce~ o edit, ~he operat~r moves the c~ill cursor 8 using the c~ll advance keys on the keyboard (e. g ., ~ght, left, up, down advance keys), by keying the appropriate command on a 30 command ~ne, such as, "go to CxRx,'l or by using a p~nting device such as a mouse whi~:h is provided with a select button which iq pressed by the operator to advise the system of the desired c~il. The app~icatil~n program highlights the selected c~ll and ~e application program is now ready tc~ perfoxm an edi~ing 35 actLon on t:he c~ll, as specil~ied by the operator.

To edii: a c~ill, the operator en~ers the data direc~Ly inb~ the prom~t ~ine 6. A "typing" cursor 9 denotes 'che current entry AT9~84-094 ~3~

position. As each character of data is entered, the data appears ~mmediately in the prompt line 6. The data does n~t appear ~n the se~ected cell until the operator presses the ENTER key or advances to the next cell us~ng the cursor advance keysO C~l 2 shows data 5 which had previously been entered into the c~ll via the prompt line 6.

To re-edi a celL which already contains data, the operator must issue an expli~it command which ;-lentifies to the program that the contents o~ the cell are about to be r~edited. The existing 10 contents c the cell are shown in the prompt line 6 in its originaL
form. The cell still displays the result of celL contents. The operator edits the actual ce~l contents as shown in the prompt line 6.

Fi~. 2 ilLustrates a spreadsheet 20 similar to spreadsheet 1.
Spreadshee~ 20 has rows 21 and ccilumns 22 l~beled numerica~ly and is displayed with commands 23 at the top af the screen and has NO
prompt ~ine. Cells are referenced by the row and cc~umn inter-secting name, e.g., R1C1, R6C13.

To s~ct a cell to edit in spreadsheet 20, the operator moves the 20 cell cursor 8 to the desired cell by using the cursor advance keys on the keyboard 5e . g . , right, left, up , down advance keys), by key~ng the appropnate command on a command ~ine, such as, "go to CxRx," or by u~ing a p~nting dev~ce such as a mouse to point at and select a cell by pressing a Select button on the mouse.
25 The app~ication pro~ram highlights the selected cell and positions a "~yping" cursor 24 wii hin the c~ll. The c~ll is now ready for editing .

.
To edit the ce~l, the operator enters data dixec~ly into tha cell.
The "typ~ng" cursor is in;~ally positioned at the first character 30 po~ion wi~in the cell. As the operator keys data, the "typing"
cursor 24 moves one character t~ the right as shown in cell 25. ~
the operator reaches the right boundary position of a ce~l, the ce~l contents automatically scrcill tc~ the left one character at a time as shown in cell 30 o~ Fig. 4a. The operator may correct any ed;~ing 35 mistakes at any t~me wh;le entering data usiny the cell editing keys, e.g., backspace key, d~te key. Fig. 4b shows the c~ll 30 afler a character has been del~ted. The ce~l editing keys, e.g., cursor ri~, left, up, down keys, may be used to move the 7 c ~l2èEi~

"typing" cursor to other positions within the ceD boundary. Fig.
4c shows the "typing" cursor 24 at the left cell boundary 31. If the operator a~empts to go past the left cell boundary 31 and there is more data, the data will scrcal as shown in Fig. 4d.

5 For operators accustomed to enter~ng data in a prompt ~ine or for ente~lng long formulas, the operators may request that a prompt line be shown.

The operator may enter any type c~ data wi:thin the ceL~, e. g ., textual, numbers, a formula, or a calculation. If the operator 10 specified the t~pe of ~ormat for the data within the ceJl to be a specific type, for example, all numeric or textual, the program will type check the data as the data is entered to make sure the data fits the format sp~ed.

When editing of the ce~l is completed, the operator may press the 15 Accept key to accept the data, move the c~ll cursor 8 of Fig. 3 to another cell u~ing a c~ll advance key~ or cancel the edit actLon.

If the Accept key is used, the appl;~tion program displays the results o the c~ll data wi~hout advanc~ng the cell cursor 8. This allows the user to see the resu~s ~ the cell data wii:hout moving 20 Off the cell. If the user needs to re-edit the c~l contents without reselecting thè cell, the user may press the ~ccept key again which acts as a toggle key. The appl;~at~Dn program then displays the actual cell contents ready for editing.

If a c~ll advance key is used, the application program displays the 25 results o the ce~l data and then advances the cell painter to the next cell. If the data wi~in the ce~l is textual or numerical data, the results wi~l be shown with the formatt~ng characte~istics speci-fied by the operator. Ie the data entered was a calculation, a formula, ox an e~uatLon w~:th cell reerenc~ng, the application 30 program perfc)rms the calculati~n and then displays the results in the cell., When the operator reselects the celL for edi~ing, the actual ce~l data as entered into the cell is shown to the operator.

The operator may also specify other characterislics for the data, such as, exponen~al, integer, da~r, percentage, etc. These 35 formats are conventionaL for most spreadsheets.
' To re-edit the cell which already contains data, the user cursors to the ceD, the data as entered before ~.s shown ~n the cell, and the user can begin edi~ing the ce Fig. 5 i~lustrates spreadsheets 33 and 34 which consists c~ c~
5 whi~h æe more ~han one chæacter (line) high with borders around the cPll~. Spreadsheet 33 contains a cell 35 with a height of 10 lines and the data that was entered exceeded the length of one c~ill ;ne. A spreadsheet 32 ~s also shown with variab~e spacing be-tween the rows and cclumns. This appliL:ation has bu t-in the 10 flexibi~ity for designing spreadsheet layouts which are different from the tradi~ion~ spxeadsheet. The operator may specify the orientatiDn of the rows and c~Lumns and whether a cell is single l;ne or mu~ii-line. This flexibiliiy lends i~Sæ well to other appli-cation orientat~ons such as mul~-cclumn text, calendaring, statisti 15 c~31 data tables, chart presentation tables, which lcnd themselves weLl to tabul~x type data with the functionality o~ the tradii ional spreadsheet. Since the user can enter data directly into the c~l, the user is not constrained wi~h the singlQ prompt line provided by trad~ional spreadshe~t applications.
.

A SPREADSHEET:
Table 1 is an illustration c~E an app1;ration program useable by a processor in a workstation for interactively entering data direct~Ly into a ce~l of a spreadshee~. This program is in program design 25 language (PDL) from which source and mach~e code are derivable.
In t~e ~c~lowing, it is assumed that the works~on is under at l~ast keyboard device contrtiL and that the operator has ini~ated an action requiring the app~ication to provide a spreadsheet editing environment.

30 As shown in Table 1, the application calls a routine ~CALL DIS-PLAY_SPRE~DSHEET) to display a spreadsheet on the screen.
This roul~ne posi tions the ce~l p~nter on the eirst ce31 aE the spreadsheet (e . g ., RlC 1) and high~i~hts the ce The routine returns a p~nter to the ~rst ce31. The applicat~ons then waits for 35 operator input rom the keyboard (CA~I GET_INPUT) and checks t~ see if keyboard inpu~ has been recei~TedO

I~ the INPUT_KEY is a c~ll advance key, the application det~ermines if the c~ll had been mo(liffed. 1~ the c~l has been modified, ~he applicat ion calls a routine (CALI. GET RESULTS) to perform any necessary ce~l calculations, rescaving of cell references or formu-las, etc. The application then caLls a routine (CALL FOR-MAT DATA) to format the results in the formatting characteristics 5 speci~ied by the operator. The app~ication then displays the results in the c~ll (CALL DISPLAY CELL RESULTS). The applica-tion ~hen calls a routine (CALL DEHIGHLIGHT_CELL) to dehi~hlight the currentl~ selected cell and advance the ce31 pc~nter to the next ce31 as spe~ifiPd by the cell advance key pressed 10 (CALL MOVE CELL PTR). This routine also returns a pchnter to the selected ce~l (CELL PTR~. The cell ~i~h the cell cursor is then highlighted (CALL HIGE~LIGHT CELL).

:~ the INPUT_KEY is the cell accept key, the application checks the accept key state. l~E the cell is currently showing the cell 15 resu~i s, the application calls a routine (CALL DIS-PLAY CELL DATAJ to display the actuaL c~ill data and sets the accept key state (ACCEPT KEY_STATE). I~ the cell is currently showing the actual cell data, the applicat~on calls a rou~ine (CALL
GET RESULTS) ~o perform any necessary cell calculations, rescilv-20 ing of cell references or formul~s, etc. The app~icatLon then callsa routine (CALL FORMAT r~ATA) to format the resul~s in the format~ng characteristics specii~ied by the opera~or. This applica-tion then displays the res~lts in ~e c~ll (CALL DIS-PLAY CELL RESULTS) and sets the accept lcey state (AC-25 CEPT KF.Y STATE) .

If the INPUT KEY is a data e~try keyl a routine is ca~led toinsert the character into the ce~l if in insert mode or to replace the character in the ce31 if in rep~Ace mode at the "typing" cursor position (CALL INSERT INPUT KEY~ ThLs rou~e performs cbll 30 boundary checkin~ to determLne if the data needs to be scrcJled.
l~E the ce~l is more than one character high, this routine performs any necessary character wrappm~ to the next line ~ the celL
This routine also per~orms any type checking c~ data t~ make sure the data entered into the ce~l is of the type speci~ïed by the 35 oper~or (i.g., all textual, all numerical, etc.). A rou~ne is then cal~d (CALL DISPLAY CELL D~TA~ to update the cedl con-tents on the display .

If the INPUT XEY is a cell edi~ing key, a routine is called to process the editing key ~CP~LL EDIT CELL_DATA). The e~ ;ng ~3~

keys allow the operator ~o move the typing cursor within the cell boundary or del~te characters. This routine also performs cell boundary checking to determine if the data needs to be scr~illed.
If the ce31 is more than one character high, this routine per~orms 5 any necessary cursor wrapping to the next l;ne of the cell.

If the INPUT_KEY is a command key, the app~ication c~ a rou-tine to process the command (CALL PROCESS COMMAND) and returns a terminate ediiing flag (EDIT COMPLETE) if the command selected terminates ediiing.

10 The applical~ion continues to wait and process keystrokes until the operator terminates the editing session (UNTIL EDIT_COMPLETE).

3~

PSEUDO CODE FOR DIRECT DATA ENTRY INTO A SPREADS~IEET

CALL DISPLAY-SPREADSHEET (CELL PTR) REPEAT
, CAI,L GET_INPUT (INPUT_KEY) .IF INPUT_KEY <~ NULL THEN
. . CASE INPUT KEY OF
. . . CELL ADVANCE_KEY:
. . . . ~ CELL MOD~IED THEN
. . . . o CALL GET RESULTS tCELL PTR, CELL_RESULTS) . . . . , CALL FORMAT DATA (CELL RESULTS) . . . . . CALL DISPLAY_CELL RESULTS (CELL PTR, CELL RESULTS) . . . . END~
. . . . CALL DEHIGHLIGEIT CELL (CELL_PTR3 . . . . CALL MOVE CELL PTR (CELL PTR, INPUT KEY) . . . . CALL HIGHLIGHT_CELL (CELL PTR) . . . ACCEPT KEY:
. . . .IF ACCEPT KEY_STATE = SHOWING RESULTS THEN
. . . . . CALL DISPLAY CELL DATA (CELL PTR) ... . . . SET A.CCEPT KEY STATE = SHOWXNG DATA
. . . . EI,SE
. . . . . CALL GET_RESULTS (CELL PTR, CELL RESULTS) . . . . . CALL FORMAT DATA (CELL RESULTS) . . . . . CALL DISPLAY CELL RESULTS (CELL PTR, CELL RESULTS) o . . . . SET ACCEPT KEY STATE = SHOWING RESULTS
25 . . . . ENDIF
. . . DATA ENTRY KEY:
. . . . . CALL INSERT INPUT KEY (INPUT KEY, CELL PTR) . . . . CALL DISPLAY CELL DATA (CELL PTR) . . . EDIT KEY:
. . . . CALL EDIT CELL DATA .(INPUT KEY, CELL PTR) .... CALL DISPLAY CELL DA~A (CELL PTR) . . . COMMAND KEY:
. . . . C.ALL PROCESS COMMAND (INPUT KEY, EDIT COMPLETE) . . . ENDCASE
, END~
UNTIL EDIT COMP~ETE

X~, DESCRIPTION OF FLOW CHART FOR DIRECT DATA ENTRY INTO
A SPREADSHEET:

The procedure just desc~ed is illustrated in the ~low chart shown m Fig. 6 to which reference is now rnade. In order to start the S spreadsheet edi~g session, the operator ini~iates the display of a spreadsheet. The actions requ~red to do this are not det il~d here as they have no re1evance to the subject invention. The applica-tion displays a spreadsheet on the screen as shown in block 40.
Once the operator is edi~ing the spreadsheet, the application waits 10 for keyboard input as shown in b~ck 41. If keyboard input is received as shown in blDck 42, the application processes the keyboard input according to the f~llowiny: If the input key is one of the cell advance keys, the application determ~nes if the cell has been modiiïed before advancing the celI painter. This is shown in 15 block 43. If the cell has been rnod;fied, the apF~ication performs the necessary operations to get the results of the cell contents, formats the data in the operator spe~fied formatting characteris-tics, and then displays the cell resu~ts as depicted in block 44.
The app~ication program then advances the cell painter, dehigh-20 ~ights the current c~ll, and highlights the next cell. This isshown in block 45.

If the input key pressed is the accept key, the app~ication pro-gram determines the state of the cell contents by testing to see if the c~ll results are being shown as depi~ted in block 46. :~ the 25 results are being shown, the appli~ation program displays the cell data and then sets the accept key state as shown in b~Dck 47. If the cell data is bedng shown, the application performs the neces-sary operal:iDns to get the results o~ the cell contents, formats the data ~ the operator spedfied ~ormatting characteris~s, and then 30 displays the c~ll resu~;ts as depic~ted in block 48. ~he ap~lication also sets the accept key state~

If the input key is a data entry key, the application inS~s the data into the cel1 at the "t~rping'l cursor location if the operator is ~nser~g da~a ~sert mode~. ~ the operator is repl~cing data 3s (replace mode) r the application replaces the character at the "typing" cursor location. The application performs any additional processing needed to scrc~ll or wrap data within the cell. The 3~

application then displays the updated cell contents. This is shown in block 49.

If the ~put key is one of the ce ed~ing keys , (e . g ., del~te , backspace), the application performs the e(l;ting operatic~n on the 5 c~ill da~a and redisplays the cell contents as shown in block 50.

If the input key pressed is a command key, the application pro-cesses the command as shown ~n block 51.

:i~ no input key is received, the app~catic)n continues ~o wait for keybd input.

10 The appl;r~ n con~nues processing keybd inpu~ un~:L the operator terminates the editing session as shown in block 52.

Wh~le ~he invention has been particul~rly shown and described with reference to the preferred embodiment, it should be unders~sod by - those persons skilled in the art that various changes in form and 15 detaiI may be made without departing from the spirii and scope of the invention.

Claims (8)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:

1. In an interactive data processing system including an input device operable by the operator of said system for entering data into said system, a display device having a predetermined number of displayable lines and a predetermined number of displayable columns for displaying information entered into said system and a system processor for controlling said devices and for executing a spreadsheet application program, an improved method for assisting the operator of said system in the editing of said said spreadsheet comprising the steps of:
1) displaying a spreadsheet shell on said display device by running said application program on said processor to depict a plurality of addressable cells arranged in a two dimensional array of addressable horizontal rows, each of which comprises a pre-defined number of said displayable lines, and addressable vertical columns, each of which comprises a predefined number of said displayable columns, said step of displaying including the further step of, (a) assigning to each said addressable horizontal row and each said addressable vertical column a unique symbol to permit each said cell to be addressed by the two said symbols assigned to said addressable row and column that intersect at said cell;
1. (continued) 2) selecting one of said addressable cells to be edited, including the further step of said operator moving a system cursor to said one selected addressable cell;
3) displaying another cursor within said one selected cell to indicate the display position in said selected cell where an editing action of said operator will be displayed;
4) performing said editing action with said input device including the further step of, moving said another cursor to the next adjacent unedited display position in said selected cell;
5) displaying each said action that said operator performs with said input device, and 6) operating a predetermined key after the last said editing action to indicate to said system that the editing operation for said selected cell is complete.
2. An improved method for assisting an operator of an interactive data processing system to enter data into one cell selected from a plurality of displayed cells, each of which has a unique address that is assigned in accordance with the spatial position of said cell in a two dimensional spreadsheet array, said method comprising the steps of:
1) running a spreadsheet application program on said system to display said spreadsheet array of cells;
2) displaying a typing cursor at a predetermined display position within one said cell; and 3) displaying as normal text each character of data that said operator enters into said system in sequential horizontal display positions within said one cell beginning with said predetermined display position.
3. The method recited in Claim 2 including the further steps of, 1) selecting said one cell including a first step of, (a) positioning a system cursor within said one cell, and a second step of, (b) indicating to said system that said one cell is to be selected, and 2) keying in an accept signal after the last data character is entered in to conclude the entry of said data.
4. The method recited in Claim 3 including the further step of, 1) scrolling data within said selected cell when the number of characters entered into said one cell on one said display line exceeds the number of said character positions that are displayed on said one said line within said selected cell.
5. A method for assisting the operator of an interactive data processing system executing a spreadsheet application program in editing a displayed spreadsheet, said system including an input device operable by said operator for entering data into said system, a display device having a predetermined number of displayable lines and a predetermined number of displayable columns for displaying information entered into said system and a system processor for controlling said devices and for executing said spreadsheet application program, said method comprising the steps of, 1) displaying a spreadsheet on said display device by running said application program on said processor to depict a plurality of addressable cells arranged in a two dimensional array of addressable horizontal rows, each of which comprises a predefined number of said displayable lines, and addressable vertical columns, each of which comprises a predefined number of said displayable columns, said step of displaying including the further step of, 5. (continued) (a) assigning to each said addressable horizontal row and each said addressable vertical column a unique symbol to permit each said cell to be addressed by the two said symbols assigned to said addressable row and column that intersect at said cell;
(2) selecting one of said addressable cells to be edited, including the further steps of, (a) said operator moving a system cursor to said one selected addressable cell, and (b) indicating to said system that said one said cell is to be selected, (3) displaying another cursor at a predetermined position within said one selected cell to indicate the display position in said selected cell where a first editing action of said operator will be displayed;
(4) assigning said one selected cell a first format attribute prior to selecting said one cell, (5) performing said editing action by entering characters into said one selected cell with said input device including the further steps of, (a) displaying as normal text each said character that is entered into said system, (b) moving said another cursor to the next adjacent unedited display position in said selected cell after the entry of each said character; and (c) keying in an accept signal after the last said character is entered, and
5. (continued) (6) converting said characters of data displayed in said text mode into a different representation corresponding to said previously assigned format attribute only after said operator keys in said accept signal.
6. The method recited in Claim 5 in which said step of assigning a format attribute includes, (1) assigning a formula attribute to said one cell to cause said characters that are entered in said one cell as a formula to be displayed in a formula format prior to said step of keying in said accept signal, and in which said step of converting includes, (2) processing said formula with said system and displaying in said one cell only the results of calculating said formula.
7. The method recited in claim 6 including the further steps of, (a) reselecting said one cell at a subsequent time, and (b) re-displaying said initial formula whenever said one cell is re-selected.
8. The method recited in claim 3 in which said selected cell is at least two display lines in height including the further step of;
(a) wrapping any remaining sequential data characters entered into said cell to the next said display line whenever the current display line becomes full.
CA523244A 1986-01-16 1986-11-18 Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet Expired CA1263191C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US81919086A 1986-01-16 1986-01-16
US819,190 1986-01-16

Publications (2)

Publication Number Publication Date
CA1263191A true CA1263191A (en) 1989-11-21
CA1263191C CA1263191C (en) 1989-11-21

Family

ID=25227447

Family Applications (1)

Application Number Title Priority Date Filing Date
CA523244A Expired CA1263191C (en) 1986-01-16 1986-11-18 Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet

Country Status (3)

Country Link
JP (1) JPS62166390A (en)
BR (1) BR8700151A (en)
CA (1) CA1263191C (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5230040A (en) * 1988-09-21 1993-07-20 Fuji Xerox Co., Ltd. Table calculating device
JPH02278323A (en) * 1989-04-19 1990-11-14 Mitsubishi Electric Corp Input supporting system in spread sheet
EP2738435B1 (en) * 2012-11-28 2015-06-24 TI Automotive (Fuldabrück) GmbH Motor vehicle unit and method for producing a motor vehicle unit

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5799684A (en) * 1980-12-11 1982-06-21 Fuji Electric Co Ltd Display control system having key-in data discrimination function
JPS58105286A (en) * 1981-12-18 1983-06-23 株式会社日立製作所 Control of display unit
JPS5968038A (en) * 1982-10-12 1984-04-17 Hitachi Ltd Tabulation system

Also Published As

Publication number Publication date
JPS62166390A (en) 1987-07-22
BR8700151A (en) 1987-12-01
CA1263191C (en) 1989-11-21

Similar Documents

Publication Publication Date Title
US5021973A (en) Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet
US4870610A (en) Method of operating a computer system to provide customed I/O information including language translation
US4202041A (en) Dynamically variable keyboard terminal
US5086503A (en) Methods of remapping a keyboard within a computer system
US6340937B1 (en) System and method for mapping multiple identical consecutive keystrokes to replacement characters
CA1309187C (en) Sharing word-processing functions among multiple processors
JPH05134797A (en) Dynamic estimation keyboard and method for operating keyboard
JPH04252351A (en) Computing apparatus
EP0745300B1 (en) Multilingual operation and maintenance interface for a telecommunication exchange
JPH0352098B2 (en)
US20110080409A1 (en) Formula input method using a computing medium
Finseth The craft of text editing: Emacs for the modern world
CA1263191A (en) Method for assisting the operator of an interactive data processing system to enter data directly into a selected cell of a spreadsheet
US8209356B1 (en) Direct command line parser
Hammer et al. The implementation of Etude, an integrated and interactive document production system
EP0325443B1 (en) Help facility shared by a plurality of applications
JPS6290758A (en) Information processor
KR20170133047A (en) Virtual keyboard strucutre for mobile device, method of inputting character using virtual keyboard for mobile device, computer readable storage media containing program for executing the same, and application stored in media for executing the same
EP0404893B1 (en) Electronic document display with annotation routines and multiple windows
JPH11110535A (en) Image processing network system, its work history management method, and record medium recorded with program for executing the processing
CN112099770A (en) Template-based webpage generation method, system, equipment and storage medium
JP3432037B2 (en) Character input device
JP4028656B2 (en) Character display method and display device
Maeda et al. A comparative study of man-machine interfaces in interactive systems
JPH04139520A (en) Keyboard device for input of japanese word with small number of keys

Legal Events

Date Code Title Description
MKEX Expiry
MKEX Expiry

Effective date: 20061121