WO2007118228A2 - Method for importing, processing and displaying data in spreadsheets - Google Patents

Method for importing, processing and displaying data in spreadsheets Download PDF

Info

Publication number
WO2007118228A2
WO2007118228A2 PCT/US2007/066227 US2007066227W WO2007118228A2 WO 2007118228 A2 WO2007118228 A2 WO 2007118228A2 US 2007066227 W US2007066227 W US 2007066227W WO 2007118228 A2 WO2007118228 A2 WO 2007118228A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
program
formulas
modified program
excel
Prior art date
Application number
PCT/US2007/066227
Other languages
French (fr)
Other versions
WO2007118228A3 (en
WO2007118228A9 (en
Inventor
Luis R. Guevara
Original Assignee
Midsoft Systems, Inc.
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 Midsoft Systems, Inc. filed Critical Midsoft Systems, Inc.
Publication of WO2007118228A2 publication Critical patent/WO2007118228A2/en
Publication of WO2007118228A9 publication Critical patent/WO2007118228A9/en
Publication of WO2007118228A3 publication Critical patent/WO2007118228A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Definitions

  • the present invention relates generally to spreadsheet systems for computing devices, and more particularly to an improved method for importing, processing and displaying data in spreadsheets.
  • Spreadsheets perform a wide variety of tasks and have proliferated in businesses, homes, academia, and in a multitude of other environments. This proliferation has been due, in part, to the ability of spreadsheets to calculate new data from existing data.
  • a spreadsheet program may comprise one or more worksheets each of which is divided into a rectangular grid made up of columns and rows as shown in Fig. 1.
  • a letter assigned to each column appears in the column header just above the worksheet grid.
  • a number assigned to each row appears in the header to the left of the worksheet grid.
  • a cell is formed at the intersection of each column and row.
  • the cells form the basic building blocks of the worksheet. Each cell is assigned a unique set of coordinates consisting of its column and row number, called a cell reference. A cell reference serves as a pointer to a particular cell. When a cell reference is called by another cell, the referenced cell returns its value to the calling cell. Thus, one cell is able to obtain and use the numeric value of another cell by simply referencing it.
  • a cell may obtain and use the numeric values of a group of cells by referencing the area of the group.
  • An area reference comprises two cell references, that of the top left cell in a group and that of the bottom right cell in the group.
  • the term cell reference will be used herein to refer to both references to a particular cell and to references to an area.
  • the value of a cell may be a number or text stored in the cell, or the value may be the solution to a formula that is stored in the cell.
  • a formula is stored in a cell in a tokenized form.
  • the formula consists of mathematical operations to be performed along with any cell references for values required for the mathematical operations.
  • the worksheet automatically calculates solutions for the formula by retrieving values of the cell references in the formula and performing the mathematical operations defined by the formula.
  • a cell reference in a formula may be absolute or relative with respect to the location of the cell containing the formula.
  • An absolute reference to a cell in a formula points to the absolute location of that cell on the worksheet and remains the same when the formula is copied to other cells.
  • Absolute references are utilized when the value of a cell having a particular location is always intended for use in the formula regardless of the location of the cell containing the formula.
  • a relative reference to a cell points to the location of the cell in relation to the cell that contains the formula and necessarily changes when a formula is copied to other cells in order to preserve that relation.
  • Relative references are utilized when the value of a cell, having a particular offset from the cell containing the formula rather than a particular location in the worksheet, is always intended for use in the formula.
  • the formula need not be modified when the value of a referenced cell is changed. Rather, the solution for the formula need only be recomputed. Because the worksheet recomputes the solution automatically, the value calculated by the formula of a worksheet, the new data, remains current even after the underlying values, the existing data, have been changed.
  • a shared formula as distinguished from a common formula, is stored in tokenized form.
  • the shared formula consists of mathematical operations and the absolute cell references of the values required by the mathematical operations.
  • the absolute cell references are identical for a common formula set. Because the relative cell references are different for each formula in a common formula set, however, relative cell references cannot be stored directly in the shared formula. Instead, the offsets of the relative cell references are stored in the shared formula. The offsets of the relative cell references are identical for a common formula set.
  • Each cell that shares a formula contains a pointer to that formula in order to link it with the formula.
  • the formula is stored separately from the cell. Solutions to a shared formula are automatically calculated by the worksheet for each cell by applying the offsets to determine the relative cell references, retrieving the values of the cell references, both absolute and relative, and performing on them the mathematical operations defined by the shared formula.
  • the above described method of sharing formulas in the prior art was successful in reducing the amount of storage required by formulas.
  • a problem, however, with formula sharing is that a shared formula could not be modified in response to editing operations, as is done for individual formulas residing in cells.
  • the term editing operation means the insertion or deletion of rows or columns, which causes a shift in the existing cells of a worksheet and thus the cell references of the formulas therein.
  • cell references to values that were shifted by editing operations were not updated.
  • the shared formulas were left outdated, which caused the values calculated by the shared formulas to be erroneous. Because that result was unacceptable, formula sharing was abandoned despite its benefit in reducing the amount of storage required by formulas. Therefore, a need existed in the art for a method and system of updating shared formulas in response to editing operations such that they remain current and yield correct solutions. Further, a need existed in the art for an improved method and system of sharing formulas in a spreadsheet program such that they may be easily adjusted upon editing operations.
  • U.S. Patent No. 5,553,215 purports to solve those needs.
  • a more recent invention provides a better solution to solving the problems in the art described above by providing a method and system of adjusting shared formulas in a spreadsheet program in response to editing operations.
  • the boundary line of cells that are shifted is determined with respect to the location of cells sharing a common formula and with respect to the location of the cell references in the common formula.
  • the method and system of the present invention adjust the shared formulas.
  • the invention provides an improved method and system of sharing common formulas in a spreadsheet program in order to allow efficient adjustments of shared formulas in response to editing operations. Large cell groups having common formulas are partitioned into smaller areas of common formulas. A separate shared formula is then shared for each smaller area of common formulas.
  • the method and system of the invention When called upon to share a common formula, the method and system of the invention first determine whether a cell group should be partitioned on the basis of the number of columns and rows in an area that contains the cell group. If the number of columns is greater than a predetermined limit, the area of the cell group is partitioned into sub-areas each having a preset number of columns, except for a last sub-area which has the remainder of the columns of the area. Further, if the number of rows is also greater than a predetermined limit, the sub-areas are partitioned into formula boxes each having a preset number of rows, except for a last formula box of each sub-area which has the remainder of the rows of the sub-area. If the number of columns and rows are not above the predetermined limits, the entire area of the cell group forms a formula box. A shared formula is then determined and stored for each formula box.
  • the method and system of the invention determine a reference box for each shared formula.
  • the reference box of a shared formula bounds an area of the worksheet that contains the cell references of the shared formula.
  • the location of the formula box and the reference box on the worksheet is then determined with respect to the location of the edit line.
  • the absolute cell references and the offsets of the relative cell references of the shared formula are adjusted. If a cell in the formula box can no longer share the shared formula due to the location of the cell shift, that cell is unshared and individually adjusted.
  • U.S. Patent No. 7,017,112 shows methods and systems for importing and exporting markup language formatted data into a spreadsheet document.
  • XML data is associated with a schema file defining data types and data type definitions for applying the XML data to the document.
  • a map is prepared that relates any XML data applied to the document back to corresponding elements or attributes defined in the schema file.
  • the map is parsed to find XPATHs which determine the location, data types and user data for each cell or list object in the document related to the schema file.
  • the cells and lists are populated with the XML data and user data and rendered according to formatting dictated by the XML data applied to the document.
  • the document may be exported such that the XML data is maintained for subsequent import and use.
  • the present invention concerns a method and an apparatus for importing, processing and displaying large amounts of data in connection with a spreadsheet program.
  • a commercially available spreadsheet program is the basic platform to which is added a customized new program to accomplish the desired results.
  • the preferred platform is the Microsoft Excel spreadsheet software.
  • the new method of programming in the Excel platform according to the present invention provides the following functions that cannot be performed by the Excel software: 1) produce instant or immediate responses to imported data; 2) validate all the imported data automatically and generate reports, summaries, graphics, etc.; and 3) keep historical records.
  • the new program is created in a single archive. This has the advantage that it can be sent or received via the Internet, keeping the original structure intact, and reducing the transfer time because the Excel program is stored on the computer that will be using the new program.
  • the new program is capable of changing the resolution and modifying the zoom through the Excel platform.
  • the new programs created with the new way of programming according to the present invention have the capacity to run in Palm devices such as the Treo 650 and modern cellular phones such as the Nokia 9300.
  • the new programs need minimum capacity in a PC, notebook, etc. and can be installed on any Microsoft Office program, although we recommend use of the latest available version of Office (Office XP or Office 2003).
  • This type of programming, using the Excel platform has the capacity of validating the information immediately, giving you immediate responses, and creating historical records.
  • the new programs can easily be personalized and apply to many subject areas such as: Administrative, Scientific and Statistical.
  • the new programs can be shared and, for their versatility, the new programs stimulate the use of the computer.
  • the new programs are easy to move around because they can be carried in a diskette, a pen-drive, or any other portable memory device.
  • the new programs do not require any special expertise to install and run. Once the programs are installed, the size of the fonts, colors, columns and rows can be modified.
  • the new programs are programmatic in structure (don't generate executables) and rapid and error free prototyping of new applications is a significant advantage.
  • Fig. 1 is a worksheet of a spreadsheet program showing the rectangular grid of cells at the intersection of the columns and rows;
  • Figs. IA through ID are tables illustrating the input of data into the spreadsheet program
  • Fig. 2 is a diagrammatic view of the components of the computing system used in connection with the spreadsheet of Fig. 1 for sharing formulas in accordance with the present invention and adjusting the same in response to editing operations;
  • Fig. 3 is a flow diagram for a soccer program that displays data in a spreadsheet in accordance with the present invention.
  • Figs. 4 through 13 are screen shots of the program displays according to an example of the present invention.
  • Fig. 1 shows a typical worksheet 24 having columns “A” through “I” and rows “1” through “25” for example.
  • the number of columns and rows displayed on a computer monitor will vary depending upon the magnification level selected, but that number is a small fraction of the 256 columns and 65,536 rows that make up the Microsoft Excel worksheet.
  • Fig. 2 shows the components of a preferred operating environment, a computer system, for use in connection with the spreadsheet program in accordance with the present invention.
  • a computer system 10 includes an operating system 12 stored in a memory device 14.
  • the operating system 12 operates the computer system 10 in conjunction with a central processing unit (CPU) 16 to retrieve, process, store and display data.
  • Data may be displayed electronically on a monitor 18 or a hard copy may be generated by a printer 20 as a result of data sent from the operating system 12 to a basic input/output system (BIOS) driver 13.
  • BIOS basic input/output system
  • a computer-implemented spreadsheet program or application program 22 is stored in the memory device 14.
  • the spreadsheet program 22 is called by the operating system 12 upon a request by a user.
  • Data is passed from the spreadsheet program 22 to the CPU 16 and the BIOS driver 13 by the operating system 12.
  • the spreadsheet program 22 comprises one or more of the worksheets 24 that are divided into a rectangular grid made up of columns and rows. At the intersection of each column and row is a cell occupying that unique location on the worksheet 24.
  • Each cell is assigned a unique set of coordinates consisting of its column letter and row number, called a cell reference.
  • a cell reference serves as a pointer to a particular cell and, when the cell reference is called by another cell, the called cell returns its value.
  • the value of a cell may be a number or text stored in the cell or may be the solution to a formula stored in the cell.
  • a solution to the formula is automatically calculated by the worksheet by retrieving values of the cell references in a formula and performing the mathematical operations defined by the formula. DATA TNPTTT
  • Fixed width data has in every row the same format. For example, the first data entry is in columns 1-4, the second data entry is in columns 5-6, and so on. So the entry “154879" would be read as first data entry of "1548", second data entry of "79" and so on.
  • Delimited data has a special character indicating a break between one entry and the next.
  • Programs such as Excel have their own way of representing data and associated information such as column headings and row and column location of the data. Such data is in general not transferable across programs.
  • One such example of this is that even for Excel, earlier versions of Excel may be unable to open a file saved by a later version of Excel.
  • Excel organizes data into worksheets, explained below. Excel is able to read data from some other formats, notably earlier versions of Excel, other spreadsheet programs such as Quattro-Pro and Lotus 1-2-3, and data base programs such as Access and DBase. But Excel cannot read in data from all other formats. WORKBOOKS AND WORKSHEETS
  • Excel saves data in a file called a workbook.
  • Each workbook can contain many worksheets, allowing organization of various kinds of related information in a single file.
  • a worksheet is used to list and analyze data. You can enter and edit data on several worksheets simultaneously and perform calculations based on data from multiple worksheets. Charts and other data analysis can be placed either on the worksheet with its related data or on a separate chartsheet or worksheet. The names of the sheets appear on tabs at the bottom of the workbook window. To move from sheet to sheet, click the sheet tabs.
  • FIG. IB Now headers (CARS and HH SIZE) are in row 1 and data are in rows 2 to 6. The final data are shown in Fig. IB:
  • the table shown in Fig. 1C includes the same data used in the example above. Note that the data is both fixed width and that there is at least one space between each piece of data so that the data is also space-delimited text data.
  • the file is a textfile; it is not a spreadsheet file.
  • the present invention has succeeded in assembling in all the areas, such as administrative, statistical, scientific and other programs or applications, and they will be generated with real time response, will be able to validate all the input data that has been supplied, will be capable of keeping a historical registry and will automatically generate reports, summaries, graphics, consultations, etc.
  • the present invention can be defined as a new and advanced software programming method/technique that consists of algorithmic and calculus formulas which, depending upon the application, can be mixed or varied in many combinations to create solutions to the requirements of the specific application to be developed.
  • the present invention is a system or software programming method that as the end result will create, process and generated automatic results thru a processes based upon interpretative programming that will generated historical records.
  • This program is created in one single archive.
  • This program is mounted on an Excel platform. 3. This program is capable of being sent or received via the Internet, keeping its original structure intact.
  • This program is capable of changing its resolution and modifies its zoom to adapt to any type of user.
  • the program needs minimum capacity in a PC, notebook, etc. and can be installed on any Microsoft Office program, although we recommend use of the latest available version of Office (Office XP or Office 2003). 7.
  • This type of programming using the Excel platform, has the capacity of validating the information immediately, giving you immediate responses, and creating validated the information and to carry their historical.
  • this file (archive), or program can be shared.
  • This program is easy to move around because it can be carried in a diskette, a pen-drive, or any other memory mechanism.
  • the programming method according to the present invention can be utilized to collect, store and display data associated with any type of sporting event.
  • the following is an example related to the sport of soccer in general and in particular to the FIFA World Cup 2006 in which thirty-two teams from around the world play for the championship.
  • Fig. 3 is a flow diagram of the soccer program according to the present invention and Figs. 4-13 are screen shots of the program displays.
  • the program uses Microsoft Excel software to generate the various displays. This program was written in the Spanish language, but can be modified for use in any language.
  • Data is entered into the program at an input 30 which represents any suitable apparatus such as a computer keyboard or a keypad of a cellular telephone.
  • a main menu is generated at 32 and is displayed as shown in Fig. 4.
  • the main menu is a first sheet in the Excel workbook.
  • the input data is stored at 34 to provide a historical record.
  • a list of the teams can be generated as shown in Fig. 6.
  • the teams are divided into eight groups identified by the letters "A" through “H” and each group has four teams. Thus each team is identified by a unique letter and number combination. Any one of the teams can be selected from the thirty-two teams stored at 36 in Fig. 3 for viewing by clicking on the team name in
  • Fig. 6 shows the display for the French (Francia) team "Al” listing information about the players on the team.
  • Fig. 13 shows the similar display for the team "H4" from Tunisia (T ⁇ nez).
  • the displays shown in Figs. 6, 12 and 13 also are sheets in the Excel workbook and there is a separate sheet generated for each of the thirty-two teams.
  • Figs. 7 and 8 are a display of the scheduled preliminary round games generated as Excel sheets.
  • Fig. 7 displays the "A” through “D” groups of teams by pressing the button "Eliminatroria Grupo A Hasta D" in
  • Fig. 4. Fig. 8 displays the “E” through “H” groups of teams by pressing the button
  • the points earned by the teams as games are completed are stored at 42 in Fig. 3.
  • the macros utilized to generate the displays shown in Figs. 4 through 13 are as follows: Macros Utilizados en el Programa de Futbol
  • the programming language for Excel is Visual Basic for Applications (VBA) and can be used to edit existing formulas and existing macros, and to write new formulas and new macros through the Visual Basic Editor (VBE).
  • VBA Visual Basic for Applications
  • the method of programming according to the present invention can be used with many PDA's and cellular telephones to input and display data.
  • the Nokia 9300 combines popular voice communication features with important productivity applications in one device. This device provides the capability to schedule, exchange e-mail, obtain news, and exchange message.
  • the Nokia 9300 has a full keyboard and a wide 65,536-color screen.
  • Symbian 7.0S OS (series 80 platform), Java MIDP 2.0 and Personal profile 1.0
  • the Nokia 9300 has Tri-Band Operation.
  • Adjustable display brightness control Cover Display • Resolution 128 x 128 pixels
  • the Nokia 9300 Messaging and Imaging Multimedia Messaging (MMS) The Nokia 9300 Messaging and Imaging Multimedia Messaging (MMS)
  • Multimedia messaging (MMS) with compatible devices send and receive messages with text, a sound clip, and an image or a video clip to other compatible devices
  • Video player RealVideo, MPEG4, and H.263 formats supported The Nokia 9300 Connectivity and Data Transfer
  • the Nokia 9300 comes with a full set of business applications that give you the ability to view, edit, and create documents, spreadsheets, and presentations while on the go.
  • the device supports the most common features of Microsoft Word, PowerPoint, and Excel (MS Office 97 or later).
  • Treo 650 is a combination of a mobile phone along with email, an organizer, messaging, web access, and a camera.
  • the Treo 650 smartphone can carry thousands of business and personal phone numbers with you, and dial any of them by name from your contacts list. Or, you can enter a name or number on the QWERTY keyboard. There's even an on-screen dial pad, speakerphone, speed dial, conference calling, call history, and caller ID make managing all your calls that much easier. It is available as a dual-band digital CDMA phone, and as a GSM quad-band world phone.
  • the included VersaMail® e-mail client makes it easy to access and manage your e- mail on the go — whether you use a popular desktop e-mail client, IMAP or POP3. View photos, HTML, and even native Microsoft Word, Excel, and PowerPoint attachments.
  • the Treo 650 smartphone lets you organize and simplify your business and personal life — all in one place. You can synchronize your calendar and contacts with your computer, so everything's always up to date. Plus, if you already have a Palm PoweredTM mobile device, you can transfer your information with the touch of a button. Best of all, you can expand the functions of the Treo 650 smartphone by adding any of the thousands of applications available for Palm PoweredTM devices.
  • Awenu is the free new service that enables you to remotely access your home or office computer from your Treo 650 smartphone — enjoy secure access to any file or photo on your computer from wherever you are. Plus, you can even share access to a specific file or folder with friends, colleagues or family. To get started, just download the Awenu software and install to your computer and follow the installation and set-up process.
  • the Treo 650 will require a download of Microsoft Excel to replace the installed "Document to Go" software and the addition of memory capacity to run the new programs according to the present invention.
  • the new programs according to the present invention use a set of formulas selected from known Excel formulas, known Visual Basic formulas, known Excel macros and new formulas created for the specific application assembled into a file.
  • the imported data is also stored in the file.
  • Validation and historical record information created by the new program also is stored in the file.
  • the Excel platform is separate and does not have to be stored in the file of the new program, the file size can be relatively small.
  • the new method of programming in the Excel Platform provides the following functions that cannot be performed by the Excel software: 1) produce instant or immediate responses to imported data; 2) validate all the imported data automatically and generate reports, summaries, graphics, etc.; and 3) keep historical records.
  • the present invention has been described in what is considered to represent its preferred embodiment. However, it should be noted that the invention can be practiced otherwise than as specifically illustrated and described without departing from its spirit or scope.

Abstract

A method for importing, processing and displaying large amounts of data modifies an existing spreadsheet computer program. The modified program includes an Excel platform that performs the following functions that cannot be performed by the Excel software: 1) produce instant or immediate responses to imported data; 2) validate all the imported data automatically and generate reports, summaries, graphics, etc.; and 3) keep historical records. Typically, the modified program is created in a single archive providing the advantage and is capable of changing the resolution and modifying the zoom through the Excel platform. The modified program has the capacity to run in personal digital assistant device and cellular phones.

Description

TTTT F,
METHOD FOR IMPORTING, PROCESSING AND DISPLAYING DATA IN SPREADSHEETS
CROSiS-RKFKRKNCK TO RKT-ATKD APPT ir. ATTON
This application claims the benefit of U.S. provisional patent application serial no. 60/790,497 filed April 7, 2006 and the benefit of U.S. provisional patent application serial no. 60/747,432 filed May 17, 2006.
BACKGROUND OF THK TNVKNTTON
The present invention relates generally to spreadsheet systems for computing devices, and more particularly to an improved method for importing, processing and displaying data in spreadsheets.
Spreadsheets perform a wide variety of tasks and have proliferated in businesses, homes, academia, and in a multitude of other environments. This proliferation has been due, in part, to the ability of spreadsheets to calculate new data from existing data.
A spreadsheet program may comprise one or more worksheets each of which is divided into a rectangular grid made up of columns and rows as shown in Fig. 1. A letter assigned to each column appears in the column header just above the worksheet grid. A number assigned to each row appears in the header to the left of the worksheet grid. A cell is formed at the intersection of each column and row.
The cells form the basic building blocks of the worksheet. Each cell is assigned a unique set of coordinates consisting of its column and row number, called a cell reference. A cell reference serves as a pointer to a particular cell. When a cell reference is called by another cell, the referenced cell returns its value to the calling cell. Thus, one cell is able to obtain and use the numeric value of another cell by simply referencing it.
Additionally, a cell may obtain and use the numeric values of a group of cells by referencing the area of the group. An area reference comprises two cell references, that of the top left cell in a group and that of the bottom right cell in the group. For the sake of convenience, the term cell reference will be used herein to refer to both references to a particular cell and to references to an area.
The value of a cell may be a number or text stored in the cell, or the value may be the solution to a formula that is stored in the cell. A formula is stored in a cell in a tokenized form. The formula consists of mathematical operations to be performed along with any cell references for values required for the mathematical operations. The worksheet automatically calculates solutions for the formula by retrieving values of the cell references in the formula and performing the mathematical operations defined by the formula.
A cell reference in a formula may be absolute or relative with respect to the location of the cell containing the formula. An absolute reference to a cell in a formula points to the absolute location of that cell on the worksheet and remains the same when the formula is copied to other cells. Absolute references are utilized when the value of a cell having a particular location is always intended for use in the formula regardless of the location of the cell containing the formula. Conversely, a relative reference to a cell points to the location of the cell in relation to the cell that contains the formula and necessarily changes when a formula is copied to other cells in order to preserve that relation. Relative references are utilized when the value of a cell, having a particular offset from the cell containing the formula rather than a particular location in the worksheet, is always intended for use in the formula. Because a formula is stored separately in the worksheet from any values used in the formula's computations, the formula need not be modified when the value of a referenced cell is changed. Rather, the solution for the formula need only be recomputed. Because the worksheet recomputes the solution automatically, the value calculated by the formula of a worksheet, the new data, remains current even after the underlying values, the existing data, have been changed.
The separate storage of formulas in their entirety and values, however, requires a large amount of memory as compared to storing only the values of the solutions of the formulas. To reduce the amount of storage required by formulas, an attempt has been made in the prior art to store only one copy of formulas that are common to a continuous cell group and to share that formula among the cells of the cell group. As used herein, the phrase common formulas means formulas in a continuous cell group in which the mathematical operations and the absolute references are identical and in which the relative references have the same offset. Common formulas occur as a consequence of copying a formula to other cells and are frequently used to manipulate different series of the same data in the same manner.
A shared formula, as distinguished from a common formula, is stored in tokenized form. The shared formula consists of mathematical operations and the absolute cell references of the values required by the mathematical operations. The absolute cell references are identical for a common formula set. Because the relative cell references are different for each formula in a common formula set, however, relative cell references cannot be stored directly in the shared formula. Instead, the offsets of the relative cell references are stored in the shared formula. The offsets of the relative cell references are identical for a common formula set.
Each cell that shares a formula contains a pointer to that formula in order to link it with the formula. The formula is stored separately from the cell. Solutions to a shared formula are automatically calculated by the worksheet for each cell by applying the offsets to determine the relative cell references, retrieving the values of the cell references, both absolute and relative, and performing on them the mathematical operations defined by the shared formula. The above described method of sharing formulas in the prior art was successful in reducing the amount of storage required by formulas. A problem, however, with formula sharing is that a shared formula could not be modified in response to editing operations, as is done for individual formulas residing in cells. As used herein the term editing operation means the insertion or deletion of rows or columns, which causes a shift in the existing cells of a worksheet and thus the cell references of the formulas therein. Thus, in shared formulas, cell references to values that were shifted by editing operations were not updated. As a result, the shared formulas were left outdated, which caused the values calculated by the shared formulas to be erroneous. Because that result was unacceptable, formula sharing was abandoned despite its benefit in reducing the amount of storage required by formulas. Therefore, a need existed in the art for a method and system of updating shared formulas in response to editing operations such that they remain current and yield correct solutions. Further, a need existed in the art for an improved method and system of sharing formulas in a spreadsheet program such that they may be easily adjusted upon editing operations. U.S. Patent No. 5,553,215 purports to solve those needs.
A more recent invention provides a better solution to solving the problems in the art described above by providing a method and system of adjusting shared formulas in a spreadsheet program in response to editing operations. Upon an editing operation, the boundary line of cells that are shifted is determined with respect to the location of cells sharing a common formula and with respect to the location of the cell references in the common formula. On the basis of the relative location of the boundary line, the method and system of the present invention adjust the shared formulas. Furthermore, the invention provides an improved method and system of sharing common formulas in a spreadsheet program in order to allow efficient adjustments of shared formulas in response to editing operations. Large cell groups having common formulas are partitioned into smaller areas of common formulas. A separate shared formula is then shared for each smaller area of common formulas.
When called upon to share a common formula, the method and system of the invention first determine whether a cell group should be partitioned on the basis of the number of columns and rows in an area that contains the cell group. If the number of columns is greater than a predetermined limit, the area of the cell group is partitioned into sub-areas each having a preset number of columns, except for a last sub-area which has the remainder of the columns of the area. Further, if the number of rows is also greater than a predetermined limit, the sub-areas are partitioned into formula boxes each having a preset number of rows, except for a last formula box of each sub-area which has the remainder of the rows of the sub-area. If the number of columns and rows are not above the predetermined limits, the entire area of the cell group forms a formula box. A shared formula is then determined and stored for each formula box.
Upon an editing operation causing a cell shift along an edit line, the method and system of the invention determine a reference box for each shared formula. The reference box of a shared formula bounds an area of the worksheet that contains the cell references of the shared formula. The location of the formula box and the reference box on the worksheet is then determined with respect to the location of the edit line. On the basis of that determination, the absolute cell references and the offsets of the relative cell references of the shared formula are adjusted. If a cell in the formula box can no longer share the shared formula due to the location of the cell shift, that cell is unshared and individually adjusted.
U.S. Patent No. 7,017,112 shows methods and systems for importing and exporting markup language formatted data into a spreadsheet document. XML data is associated with a schema file defining data types and data type definitions for applying the XML data to the document. A map is prepared that relates any XML data applied to the document back to corresponding elements or attributes defined in the schema file. When the document is imported into a spreadsheet application grid, the map is parsed to find XPATHs which determine the location, data types and user data for each cell or list object in the document related to the schema file. The cells and lists are populated with the XML data and user data and rendered according to formatting dictated by the XML data applied to the document. The document may be exported such that the XML data is maintained for subsequent import and use.
SiTTMMABY OF TRF. TNVFNTTON The present invention concerns a method and an apparatus for importing, processing and displaying large amounts of data in connection with a spreadsheet program. A commercially available spreadsheet program is the basic platform to which is added a customized new program to accomplish the desired results. The preferred platform is the Microsoft Excel spreadsheet software. The new method of programming in the Excel platform according to the present invention provides the following functions that cannot be performed by the Excel software: 1) produce instant or immediate responses to imported data; 2) validate all the imported data automatically and generate reports, summaries, graphics, etc.; and 3) keep historical records.
Typically, the new program is created in a single archive. This has the advantage that it can be sent or received via the Internet, keeping the original structure intact, and reducing the transfer time because the Excel program is stored on the computer that will be using the new program. The new program is capable of changing the resolution and modifying the zoom through the Excel platform.
The new programs created with the new way of programming according to the present invention have the capacity to run in Palm devices such as the Treo 650 and modern cellular phones such as the Nokia 9300. The new programs need minimum capacity in a PC, notebook, etc. and can be installed on any Microsoft Office program, although we recommend use of the latest available version of Office (Office XP or Office 2003). This type of programming, using the Excel platform, has the capacity of validating the information immediately, giving you immediate responses, and creating historical records.
The new programs can easily be personalized and apply to many subject areas such as: Administrative, Scientific and Statistical. By using the Excel Platform, the new programs can be shared and, for their versatility, the new programs stimulate the use of the computer. The new programs are easy to move around because they can be carried in a diskette, a pen-drive, or any other portable memory device. The new programs do not require any special expertise to install and run. Once the programs are installed, the size of the fonts, colors, columns and rows can be modified.
The new programs are programmatic in structure (don't generate executables) and rapid and error free prototyping of new applications is a significant advantage.
DESCR TPTTON OF THK DR AWTNGS
The above, as well as other advantages of the present invention will become readily apparent to those skilled in the art from the following detailed description of a preferred embodiment when considered in the light of the accompanying drawings in which: Fig. 1 is a worksheet of a spreadsheet program showing the rectangular grid of cells at the intersection of the columns and rows;
Figs. IA through ID are tables illustrating the input of data into the spreadsheet program; Fig. 2 is a diagrammatic view of the components of the computing system used in connection with the spreadsheet of Fig. 1 for sharing formulas in accordance with the present invention and adjusting the same in response to editing operations;
Fig. 3 is a flow diagram for a soccer program that displays data in a spreadsheet in accordance with the present invention; and
Figs. 4 through 13 are screen shots of the program displays according to an example of the present invention.
DESrKTPTTON OF THF. PRRFRRKFT) F.MRODTMKNT U.S. provisional patent application serial no. 60/790,497 filed April 7, 2006 and U.S. provisional patent application serial no. 60/747,432 filed May 17, 2006 are hereby incorporated herein by reference.
In the following description, the Microsoft Excel spreadsheet software program will be used as an example. However, the apparatus and method according to the present invention can be used with other similar spreadsheet software programs.
As stated above, Fig. 1 shows a typical worksheet 24 having columns "A" through "I" and rows "1" through "25" for example. The number of columns and rows displayed on a computer monitor will vary depending upon the magnification level selected, but that number is a small fraction of the 256 columns and 65,536 rows that make up the Microsoft Excel worksheet. Fig. 2 shows the components of a preferred operating environment, a computer system, for use in connection with the spreadsheet program in accordance with the present invention.
As show in Fig. 2, a computer system 10 includes an operating system 12 stored in a memory device 14. The operating system 12 operates the computer system 10 in conjunction with a central processing unit (CPU) 16 to retrieve, process, store and display data. Data may be displayed electronically on a monitor 18 or a hard copy may be generated by a printer 20 as a result of data sent from the operating system 12 to a basic input/output system (BIOS) driver 13.
A computer-implemented spreadsheet program or application program 22 is stored in the memory device 14. The spreadsheet program 22 is called by the operating system 12 upon a request by a user. Data is passed from the spreadsheet program 22 to the CPU 16 and the BIOS driver 13 by the operating system 12. As previously discussed, the spreadsheet program 22 comprises one or more of the worksheets 24 that are divided into a rectangular grid made up of columns and rows. At the intersection of each column and row is a cell occupying that unique location on the worksheet 24. Each cell is assigned a unique set of coordinates consisting of its column letter and row number, called a cell reference. A cell reference serves as a pointer to a particular cell and, when the cell reference is called by another cell, the called cell returns its value. The value of a cell may be a number or text stored in the cell or may be the solution to a formula stored in the cell. A solution to the formula is automatically calculated by the worksheet by retrieving values of the cell references in a formula and performing the mathematical operations defined by the formula. DATA TNPTTT
The source for the information in this section is a September 1999 help sheet entitled "EXCEL: Data Types and Data Input", authored by A. Colin Cameron, Dept. of Economics, Univ. of Calif. - Davis.
DATA TYPES
There are many ways to represent data on a computer. A standard way to represent data and text is to use ASCII, shorthand for American Standard Code for Information Interchange. This is often called text form and often has the filename extension ".txt" or ".asc".
To be easily read in text data files must be fixed width or delimited data. Fixed width data has in every row the same format. For example, the first data entry is in columns 1-4, the second data entry is in columns 5-6, and so on. So the entry "154879..." would be read as first data entry of "1548", second data entry of "79" and so on. Delimited data has a special character indicating a break between one entry and the next.
Programs such as Excel have their own way of representing data and associated information such as column headings and row and column location of the data. Such data is in general not transferable across programs. One such example of this is that even for Excel, earlier versions of Excel may be unable to open a file saved by a later version of Excel. Excel organizes data into worksheets, explained below. Excel is able to read data from some other formats, notably earlier versions of Excel, other spreadsheet programs such as Quattro-Pro and Lotus 1-2-3, and data base programs such as Access and DBase. But Excel cannot read in data from all other formats. WORKBOOKS AND WORKSHEETS
Excel saves data in a file called a workbook. Each workbook can contain many worksheets, allowing organization of various kinds of related information in a single file. A worksheet is used to list and analyze data. You can enter and edit data on several worksheets simultaneously and perform calculations based on data from multiple worksheets. Charts and other data analysis can be placed either on the worksheet with its related data or on a separate chartsheet or worksheet. The names of the sheets appear on tabs at the bottom of the workbook window. To move from sheet to sheet, click the sheet tabs.
In many cases one will read data into the first worksheet in a new workbook. METHODS TO INPUT DATA
Common ways to input data into Excel are:
1. Type in data into a new Excel worksheet.
2. Read in data from an existing Excel workbook.
3. Copy data from an existing Excel worksheet. 4. Read in data from text file (possibly downloaded from the internet) and convert the file to an Excel worksheet.
5. Read in data from other format files such as Quattro Pro spreadsheets. 1. Type in data into a new Excel worksheet
Open Excel, for example from Start Menu | Programs. This immediately puts you into a new Excel worksheet, or prompts you to ask for a new Excel worksheet. If instead you want the new worksheet to be in an existing workbook then in the existing workbook choose Insert | Worksheet.
Consider entry of the following data shown in Fig. IA on the number of cars in a household (first column) and the number of persons in the household (second column). Type the data into cells A1 :A5 and cells B1 :B5. (Click on cell Al and enter 1 and then enter, then 2 and enter ....).
Then give headers to the two columns.
Put cursor in cell Al and choose Insert / Row. Then in the new blank cell Al type cars and in the new blank cell A2 type hh size.
Now headers (CARS and HH SIZE) are in row 1 and data are in rows 2 to 6. The final data are shown in Fig. IB:
Next give the worksheet a name. Go to the sheet tab at the bottom, which may be called Sheet 1, right-click and select rename and give the worksheet a name. Finally save the workbook by using "File | Save As" if a new workbook or "File
Save" if saving an existing workbook.
If typing in a lot of data it is obviously best to save the file a number of times before typing is finished.
2. Read in data from an existing Excel workbook This is the easiest. Open Excel, for example from "Start Menu | Programs".
Choose "File | Open" and give the filename or browse for the file you want to input. Usually the filename will have extension ".xls".
3. Copy data from an existing Excel worksheet
Suppose we are already in an existing worksheet within an existing workbook. Select "Edit | Move" or "Copy Sheet".
If copy is to the existing workbook (the default) then most often one chooses the (move to end) option in "Before Sheet". If copy is to a new workbook then choose the (new book) option in to book and type in the name of the new book.
In either case select the "Create a Copy" option. Give the new worksheet an appropriate name by going to the sheet tab at the bottom, right-click and select rename and give the worksheet a name.
4. Read in data from an existing text file
4a. Obtain text file with data from the Internet
Use a web browser to go to the web-site. For example, the table shown in Fig. 1C includes the same data used in the example above. Note that the data is both fixed width and that there is at least one space between each piece of data so that the data is also space-delimited text data. The file is a textfile; it is not a spreadsheet file.
Choose "File | Save As" in the web browser to save the data as cars.asc in a directory of your choosing, say "c:temp". The extension ".asc" is short for ASCII which is shorthand for American Standard Code for Information Intechange and is the standard way for computers to represent text in binary code. A more common term is text-file or ".txt".
4b. Enter the text file with data into Excel
Open Excel, from "Start Menu | Programs". Choose "File | Open" and the option "Files of type | All" types to read in "c:/temp/cars.asc".
In text import wizard
- choose delimited if the data are delimited and fixed width if the data are fixed width
- if there are several lines of text before the data then give the line number of the first line of data in Start import at row - hit next
- make appropriate selection such as select space (and deselect tab) for space delimited data, hit next and then finish.
This should give you 2 columns and 5 rows in cells Al :B5.
Alternatives are that data are delimited by commas or tabs in which case one would instead choose the relevant alternative, and fixed width.
It is a good idea then to save the data as an Excel workbook or worksheet in a workbook, and copy on to your own diskette on the a: drive. Also add the data headings for CARS and HH SIZE (see 2 above). The final data is shown in Fig. ID.
4. Read in data from files in other formats Excel will read in data from a number of formats including other spreadsheet programs such as Quattro Pro and Lotus 1-2-3. TTTTTJZATTON OF THE EXCFI, PT, ATFORM.
The use of the Excel platform by the method and apparatus according to the present invention is achieved through a combination of a series of formulas that were created or invented in order to convert the Excel page program in a very powerful tool which will facilitate and produce all types of programs or applications.
With the utilization of the Excel platform, the present invention has succeeded in assembling in all the areas, such as administrative, statistical, scientific and other programs or applications, and they will be generated with real time response, will be able to validate all the input data that has been supplied, will be capable of keeping a historical registry and will automatically generate reports, summaries, graphics, consultations, etc.
The present invention can be defined as a new and advanced software programming method/technique that consists of algorithmic and calculus formulas which, depending upon the application, can be mixed or varied in many combinations to create solutions to the requirements of the specific application to be developed.
The present invention is a system or software programming method that as the end result will create, process and generated automatic results thru a processes based upon interpretative programming that will generated historical records. ADVANTAGES OF PROGRAMMING TN FXCFJ,
Some advantages of using the method of programming according to the present invention with the Excel software are:
1. This program is created in one single archive.
2. This program is mounted on an Excel platform. 3. This program is capable of being sent or received via the Internet, keeping its original structure intact.
4. This program is capable of changing its resolution and modifies its zoom to adapt to any type of user.
5. This new way of programming has the capacity to run in Palms and modern cellular phones.
6. The program needs minimum capacity in a PC, notebook, etc. and can be installed on any Microsoft Office program, although we recommend use of the latest available version of Office (Office XP or Office 2003). 7. This type of programming, using the Excel platform, has the capacity of validating the information immediately, giving you immediate responses, and creating validated the information and to carry their historical.
8. With this type of software, one has the capacity to personalize the programs. 9. Through this Technology, one can create programs in the subject areas of:
Administrative, Scientific and Statistical or any others.
10. Using this platform (Excel Platform), this file (archive), or program can be shared.
11. With the handling of these programs, for their versatility, they stimulate the use of the computer.
12. This program is easy to move around because it can be carried in a diskette, a pen-drive, or any other memory mechanism.
13. Its installation doesn't require specialists.
14. Once the program is installed, the size of the fonts, colors, columns and lines (rows), can be modified.
15. It is programmatic structure; it doesn't generate executables.
16. Rapid and error free prototyping of new applications.
SOCCER WORT, D CTTP APPT TC ATTON The programming method according to the present invention can be utilized to collect, store and display data associated with any type of sporting event. The following is an example related to the sport of soccer in general and in particular to the FIFA World Cup 2006 in which thirty-two teams from around the world play for the championship.
Fig. 3 is a flow diagram of the soccer program according to the present invention and Figs. 4-13 are screen shots of the program displays. The program uses Microsoft Excel software to generate the various displays. This program was written in the Spanish language, but can be modified for use in any language. Data is entered into the program at an input 30 which represents any suitable apparatus such as a computer keyboard or a keypad of a cellular telephone. A main menu is generated at 32 and is displayed as shown in Fig. 4. The main menu is a first sheet in the Excel workbook. The input data is stored at 34 to provide a historical record.
In the Fig. 3 main menu 32, a list of the teams can be generated as shown in Fig. 6.
See the "Equipos Selecccionados" button in Fig. 4. The teams are divided into eight groups identified by the letters "A" through "H" and each group has four teams. Thus each team is identified by a unique letter and number combination. Any one of the teams can be selected from the thirty-two teams stored at 36 in Fig. 3 for viewing by clicking on the team name in
Fig. 6. Fig. 12 shows the display for the French (Francia) team "Al" listing information about the players on the team. Fig. 13 shows the similar display for the team "H4" from Tunisia (Tύnez). The displays shown in Figs. 6, 12 and 13 also are sheets in the Excel workbook and there is a separate sheet generated for each of the thirty-two teams.
Information about the preliminary games is generated at 38 in Fig. 3 and information on subsequent rounds is generated at 40 in Fig. 3. Figs. 7 and 8 are a display of the scheduled preliminary round games generated as Excel sheets. Fig. 7 displays the "A" through "D" groups of teams by pressing the button "Eliminatroria Grupo A Hasta D" in
Fig. 4. Fig. 8 displays the "E" through "H" groups of teams by pressing the button
"Eliminatroria Grupo E Hasta H" in Fig. 4.
The results of the preliminary games reduce the teams to sixteen for the Round of
Sixteen. The results of the Round of Sixteen games reduce the teams to eight for the Quarterfinal. The results of the Quarterfinal games reduce the teams to four for the
Semifinal. The results of the Semifinal games reduce the teams to two for the Final game.
Clicking the "Octavos Cuartos y Final" button in Fig. 4 displays the Round of
Sixteen games through the Final game with example teams as shown in Fig. 10. Clicking on the bottom button at the upper right of Fig. 10 displays the schedule of games for all of these rounds. Clicking on the bottom button at the upper right of Fig. 9 returns the display to Fig.
10. Clicking on the "Resultados Generales" button in Fig. 4 displays tables of statistics as shown in Fig. 11. Clicking on the "Historia de Campeones" button in Fig. 4 displays a table of historical; information as shown in Fig. 5.
The points earned by the teams as games are completed are stored at 42 in Fig. 3. The macros utilized to generate the displays shown in Figs. 4 through 13 are as follows: Macros Utilizados en el Programa de Futbol
Sub CerrarO
'Cerrar el Programa y Guardar
Dim miRespuesta As String miRespuesta = MsgBox("^Salir Pulse Si, Click Yes to Exit, Clicca si per Uscire?", vbYesNo, "Salir, Exit, Uscire, Sortir, Sair ") If miRespuesta = vbYes Then ShowMenus Sheets("Menu").Select Range("Al").Select For Each w In Application. Workbooks w. Save Next w Application. Quit Else
End If End Sub Sub HideMenusO
Application.DisplayFullScreen = True i = 0
Ηojal .Range("Zl :Z4").Clear On Error Resume Next For Each Allbars In Application. CommandBars If Allbars. Visible = True Then i = i + l With Hojal
.Cells(i, 255) = Allbars.Name If Allbars.Name = "Worksheet Menu Bar" Then Allbars. Enabled = False Else
Allbars.Visible = False End If End With
End If Next Application.DisplayFormulaBar = False
With Application. CommandBars("MyToolBar") .Visible = True
.Position = msoBarTop .Left = 0
.Protection = msoBarNoMove End With On Error GoTo O End Sub
Sub ShowMenus()
Application.DisplayFullScreen = False On Error Resume Next With Hojal
For i = 1 To WorksheetFunction.CountA(.Columns(255)) BarName = .CeIIs(I, 255)
Application.CommandBars(BarName). Enabled = True Application.CommandBars(BarName).Visible = True Next i i = l
With Application. CommandBars("MyToolBar") .Protection = msoBarNoProtection .Visible = False End With Application.DisplayFormulaBar = True End With On Error GoTo 0
Application.CommandBars("Worksheet menu bar"). Enabled = True End Sub
The programming language for Excel is Visual Basic for Applications (VBA) and can be used to edit existing formulas and existing macros, and to write new formulas and new macros through the Visual Basic Editor (VBE). CFJ J JTT, AR TFJ FPHONF, AND PDA APPT JCATTONS The method of programming according to the present invention can be used with many PDA's and cellular telephones to input and display data. For example, the Nokia 9300 combines popular voice communication features with important productivity applications in one device. This device provides the capability to schedule, exchange e-mail, obtain news, and exchange message. The Nokia 9300 has a full keyboard and a wide 65,536-color screen. Features include an Organizer that has a built-in calendar to set reminders for important events, access the tasks list to write a memo or shopping list, and browse the Internet to look up directions, find a business address or recommend a good place to meet for dinner. It is easy to synchronize data on the Nokia 9300 with applications on your PC using Nokia PC Suite software, so that the most up-to-date information is stored on each device. Key Features of the Nokia 9300
• Advanced voice features: handsfree speakerphone and conference calling capability
• Full keyboard and two 65,536-color displays • Messaging options: email with attachments, SMS, and MMS
• Office applications: Documents, Sheet, and Presentations
• Organizer (calendar, contacts, tasks) and email with PC synchronization via Nokia PC Suite software
• Large memory storage: 80MB built-in memory plus MultiMediaCard (MMC) • High-speed data connectivity with EGPRS (EDGE) • Mobile Internet connectivity
• Symbian 7.0S OS (series 80 platform), Java MIDP 2.0 and Personal profile 1.0
• Contacts and calendar data transfer over Bluetooth wireless technology or infrared between compatible Nokia devices • Pop-Port™ interface for mobile enhancement connectivity
• Tri-band (EGSM 900/1800/1900) operation for use on five continents The Nokia 9300 has Tri-Band Operation.
• EGSM 900, GSM 1800, and GSM 1900 networks in Europe, Africa, Asia- Pacific, North America, and South America where these networks are supported • Automatic switching between bands
• AMR Voice codec for 1900 frequency band The Nokia 9300 Size
• Weight: 167 g
• Dimensions: 132mm x 51mm x 21mm, 126 cc The Nokia 9300 Phone features
• Timed profiles
• Customizable profiles
• Alarm clock
• Music player with MP3, MPEG-4 (AAC), real audio, and MIDI • Wallpaper: full-screen color image
• Changeable color schemes
• Calculator
• Screensaver: digital clock in cover The Nokia 9300 Memory Functions # 80 MB built-in memory for saving contacts, messages, files, images, sounds, and applications
• MultiMediaCard (MMC) slot with hotswap functionality for additional memory The Nokia 9300 Display and User Interface
Communicator Display • Resolution 640 x 200 pixels • Active transflective color display
• Supports up to 65,536 colors
• Adjustable display brightness control Cover Display • Resolution 128 x 128 pixels
• Supports up to 65,536 colors
• Active TFT color display
The Nokia 9300 User Interface and Navigation Cover • One user-configurable soft key
• List menu
• 5 -way navigation key Communicator
• Full keyboard with 8 application shortcut keys • One user-configurable application shortcut key
• 5 -way joystick
• Symbian operating system version 7.0S
• Series 80 platform
The Nokia 9300 Messaging and Imaging Multimedia Messaging (MMS)
• Multimedia messaging (MMS) with compatible devices: send and receive messages with text, a sound clip, and an image or a video clip to other compatible devices
• Multi-slide presentations as MMS with compatible devices
• Delivery reports • Multiple recipients
• Scaling Email
• Access your own and private email accounts
• Support protocols: IMAP4, POP3, APOP, SMTP, MIME, IMAP4-SSL/TLS, POP3-SSL/TLS, SMTP-SSL/TLS, and OMA Data Synchronization Fax
• Send and receive fax through your GSM number Text Messaging (SMS)
• SMS distribution list • Message register
• Picture messaging: send graphics with text to other compatible phones Imaging
• Possibility to attach portrait images to contacts
• Video player: RealVideo, MPEG4, and H.263 formats supported The Nokia 9300 Connectivity and Data Transfer
Connectivity
• Pop-Port™ interface
• USB 2.0 connectivity (Nokia Connectivity Cable DKU-2)
• Connect wirelessly to a compatible phone or a compatible PC • Infrared
• Bluetooth wireless technology
• Install applications with Nokia PC Suite
• Internet browser: HTML 4.01 /xHTML
• Support for WML 1.3. Content • OMA DRJVI Forward Lock for content protection
• OMA Device management 1.1.2
• OMA Data Synchronization Data Transfer
• GPRS/EGPRS (EDGE) multi-slot class (MSC) 10 (4+1, 3+2) • HSCSD (2+2, 3+1)
• Circuit-Switched Data
• Fax Transmission Call Management
• Speed dialing in cover • Last number redial from dialed calls list (dial key brings out the dialed calls list) • Automatic and manual network selection
• Closed user group
• Voice recording
• Integrated handsfree speaker • Conference call capability (up to 6 participants)
• Log viewer for communication: email, calls, MMS, and SMS Java™ Applications
• Downloadable games and applications via Java™ technology (MIDP 2.0)
• Personal profile Java 1.0 Ringing Tones
• Fixed ringing tones: 40 polyphonic ringing and alert tones
• Voice clips can be used as ringing tones Applications
• Word processor (Documents), spreadsheet viewer and editor (Sheet), presentation viewer and editor (Presentations)
• Compatible with the most common features of Microsoft Word, PowerPoint, and Excel (MS Office 97 or later)
• Other applications: calculator, file manager, voice recorder, and music player Software • Nokia PC Suite: available on the product CD-ROM in sales package and from www.nokia.com/pcsuite
Organizer: Calendar, Contacts and Tasks with PC Synchronization
Using the calendar on the Nokia 9300 smartphone is a convenient way to keep track of your appointments and set reminders for important events. The Nokia 9300 also gives you access to a large contact database where you can store multiple phone numbers, email details, and even a thumbnail photo for each contact. The task list is a convenient place to write and store short notes, list things you need, or note items requiring your attention. These applications can be synchronized with Microsoft Outlook and Lotus Notes applications on your PC via Nokia PC suite software*, so that you always have the most up- to-date information on each device. Office Applications
The Nokia 9300 comes with a full set of business applications that give you the ability to view, edit, and create documents, spreadsheets, and presentations while on the go. The device supports the most common features of Microsoft Word, PowerPoint, and Excel (MS Office 97 or later).
An alternative to the Nokia 9300 is the Treo 650 from Palm. This device is a combination of a mobile phone along with email, an organizer, messaging, web access, and a camera.
The Treo 650 smartphone can carry thousands of business and personal phone numbers with you, and dial any of them by name from your contacts list. Or, you can enter a name or number on the QWERTY keyboard. There's even an on-screen dial pad, speakerphone, speed dial, conference calling, call history, and caller ID make managing all your calls that much easier. It is available as a dual-band digital CDMA phone, and as a GSM quad-band world phone. The included VersaMail® e-mail client makes it easy to access and manage your e- mail on the go — whether you use a popular desktop e-mail client, IMAP or POP3. View photos, HTML, and even native Microsoft Word, Excel, and PowerPoint attachments. Synchronize your corporate Microsoft Exchange email and calendar with built-in Microsoft Exchange ActiveSync®. Or, opt to exchange quick thoughts, ideas, and images on the fly — all from a single Inbox — with the built-in text and picture messaging application. With your messages threaded in a chat-style view, you'll be able to see the entire conversation.
With Calendar, Contacts, Tasks, Memos and more, the Treo 650 smartphone lets you organize and simplify your business and personal life — all in one place. You can synchronize your calendar and contacts with your computer, so everything's always up to date. Plus, if you already have a Palm Powered™ mobile device, you can transfer your information with the touch of a button. Best of all, you can expand the functions of the Treo 650 smartphone by adding any of the thousands of applications available for Palm Powered™ devices.
Access a whole world of websites — without wires. Get driving directions from the road. Check the latest headlines while waiting in line. Or download ringtones, applications and more, directly to your device. Web sites load quickly and the built-in Blazer® web browser even displays frames.
Talk on your headset or synchronize with your desktop without wires getting in the way. Or, use the Treo 650 smartphone hands and wire-free with a Bluetooth® car kit. It has Bluetooth® wireless technology built-in, so you can connect with a variety of Bluetooth- enabled devices.
Awenu is the free new service that enables you to remotely access your home or office computer from your Treo 650 smartphone — enjoy secure access to any file or photo on your computer from wherever you are. Plus, you can even share access to a specific file or folder with friends, colleagues or family. To get started, just download the Awenu software and install to your computer and follow the installation and set-up process.
The Treo 650 will require a download of Microsoft Excel to replace the installed "Document to Go" software and the addition of memory capacity to run the new programs according to the present invention. The new programs according to the present invention use a set of formulas selected from known Excel formulas, known Visual Basic formulas, known Excel macros and new formulas created for the specific application assembled into a file. The imported data is also stored in the file. Validation and historical record information created by the new program also is stored in the file. However, since the Excel platform is separate and does not have to be stored in the file of the new program, the file size can be relatively small.
The new method of programming in the Excel Platform according to the present invention provides the following functions that cannot be performed by the Excel software: 1) produce instant or immediate responses to imported data; 2) validate all the imported data automatically and generate reports, summaries, graphics, etc.; and 3) keep historical records. In accordance with the provisions of the patent statutes, the present invention has been described in what is considered to represent its preferred embodiment. However, it should be noted that the invention can be practiced otherwise than as specifically illustrated and described without departing from its spirit or scope.

Claims

WHAT IS CLAIMED IS:
1. A method of operating a computer system to import, process and display large quantities of data comprising the steps of: a) providing a spreadsheet computer program having a first maximum number of columns and a first maximum number of rows, said spreadsheet computer program including existing formulas and macros for importing data into the spreadsheet computer program with a first maximum speed of importation, processing the data and displaying the data; b) selecting a set of formulas from a group of formulas including the existing formulas, the existing macros, newly created formulas and newly created macros; and c) applying the set of formulas to modify the spreadsheet computer program whereby when the modified program is run on a computer system a second maximum number of rows in the modified program exceeds the first maximum number of rows and a second maximum number of columns in the modified program exceeds the first maximum number of columns.
2. The method according to Claim 1 wherein the spreadsheet computer program is an Excel program.
3. The method according to Claim 1 including performing said step b) whereby a second maximum speed of importation of data into the modified program exceeds the first maximum speed of importation.
4. The method according to Claim 1 including creating the modified program with the spreadsheet computer program and the set of formulas in a single archive.
5. The method according to Claim 1 including importing data into the modified program and generating an immediate display of the imported data.
6. The method according to Claim 1 including importing data into the modified program and automatically validating the imported data.
7. The method according to Claim 1 including importing data into the modified program and generating a validated record of the imported data.
8. The method according to Claim 1 including maintaining a file size for the modified program that is capable of being sent or received by wireless communication while keeping an original structure of the modified program intact.
9. The method according to Claim 1 including modifying the spreadsheet computer program to permit changing a resolution and a zoom of the modified program.
10. The method according to Claim 1 including running the modified program in personal digital assistant device or a cellular phone.
11. The method according to Claim 1 wherein the spreadsheet computer program is an Excel program and the set of formulas causes the modified program to validate imported data immediately, generate immediate responses to the imported data, and create historical records from the imported data.
12. The method according to Claim 1 including operating the modified program to prototype a new application program in a rapid and error free manner.
13. The method according to Claim 1 including operating the modified program to import, process and display sports game data.
14. A method of operating a computer system to import, process and display large quantities of sports related data comprising the steps of: a) providing a spreadsheet computer program having a maximum first number of columns and a maximum second number of rows, said spreadsheet computer program including existing formulas and macros for importing data into the spreadsheet computer program with a first maximum speed of importation, processing the data and displaying the data; b) selecting a set of formulas from a group of formulas including the existing formulas, the existing macros, newly created formulas and newly created macros; and c) applying the set of formulas to modify the spreadsheet computer program whereby when the modified program is run on a computer system, the modified program validates imported data immediately, generates immediate responses to the imported data, and creates historical records from the imported data.
PCT/US2007/066227 2006-04-07 2007-04-09 Method for importing, processing and displaying data in spreadsheets WO2007118228A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US79049706P 2006-04-07 2006-04-07
US60/790,497 2006-04-07
US74743206P 2006-05-17 2006-05-17
US60/747,432 2006-05-17

Publications (3)

Publication Number Publication Date
WO2007118228A2 true WO2007118228A2 (en) 2007-10-18
WO2007118228A9 WO2007118228A9 (en) 2008-06-12
WO2007118228A3 WO2007118228A3 (en) 2009-03-26

Family

ID=38581860

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/066227 WO2007118228A2 (en) 2006-04-07 2007-04-09 Method for importing, processing and displaying data in spreadsheets

Country Status (1)

Country Link
WO (1) WO2007118228A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10031906B2 (en) 2015-11-02 2018-07-24 Microsoft Technology Licensing, Llc Images and additional data associated with cells in spreadsheets
US10503824B2 (en) 2015-11-02 2019-12-10 Microsoft Technology Licensing, Llc Video on charts

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5767854A (en) * 1996-09-27 1998-06-16 Anwar; Mohammed S. Multidimensional data display and manipulation system and methods for using same
US5926822A (en) * 1996-09-06 1999-07-20 Financial Engineering Associates, Inc. Transformation of real time data into times series and filtered real time data within a spreadsheet application
US20020049784A1 (en) * 2000-10-24 2002-04-25 Internatonal Business Machines Corporation Method and system in an electronic spreadsheet for persistently copy-pasting a source range of cells onto one or more destination ranges of cells
US20020091728A1 (en) * 1998-08-05 2002-07-11 Henrik Kjaer Multidimensional electronic spreadsheet system and method
US20020129054A1 (en) * 2000-07-11 2002-09-12 Ferguson Charles H. Method and system for integrating network-based functionality into productivity applications employing spreadsheets
US6651216B1 (en) * 1999-05-10 2003-11-18 Dave Sullivan Efficiently navigating a workbook linked to a database

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926822A (en) * 1996-09-06 1999-07-20 Financial Engineering Associates, Inc. Transformation of real time data into times series and filtered real time data within a spreadsheet application
US5767854A (en) * 1996-09-27 1998-06-16 Anwar; Mohammed S. Multidimensional data display and manipulation system and methods for using same
US20020091728A1 (en) * 1998-08-05 2002-07-11 Henrik Kjaer Multidimensional electronic spreadsheet system and method
US6651216B1 (en) * 1999-05-10 2003-11-18 Dave Sullivan Efficiently navigating a workbook linked to a database
US20020129054A1 (en) * 2000-07-11 2002-09-12 Ferguson Charles H. Method and system for integrating network-based functionality into productivity applications employing spreadsheets
US20020049784A1 (en) * 2000-10-24 2002-04-25 Internatonal Business Machines Corporation Method and system in an electronic spreadsheet for persistently copy-pasting a source range of cells onto one or more destination ranges of cells

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10031906B2 (en) 2015-11-02 2018-07-24 Microsoft Technology Licensing, Llc Images and additional data associated with cells in spreadsheets
US10366157B2 (en) 2015-11-02 2019-07-30 Microsoft Technology Licensing, Llc Images on charts
US10503824B2 (en) 2015-11-02 2019-12-10 Microsoft Technology Licensing, Llc Video on charts
US10579724B2 (en) 2015-11-02 2020-03-03 Microsoft Technology Licensing, Llc Rich data types
US10599764B2 (en) 2015-11-02 2020-03-24 Microsoft Technology Licensing, Llc Operations on images associated with cells in spreadsheets
US10713428B2 (en) 2015-11-02 2020-07-14 Microsoft Technology Licensing, Llc Images associated with cells in spreadsheets
US11106865B2 (en) 2015-11-02 2021-08-31 Microsoft Technology Licensing, Llc Sound on charts
US11200372B2 (en) 2015-11-02 2021-12-14 Microsoft Technology Licensing, Llc Calculations on images within cells in spreadsheets
US11630947B2 (en) 2015-11-02 2023-04-18 Microsoft Technology Licensing, Llc Compound data objects

Also Published As

Publication number Publication date
WO2007118228A3 (en) 2009-03-26
WO2007118228A9 (en) 2008-06-12

Similar Documents

Publication Publication Date Title
US10200322B1 (en) Methods for responding to an email message by call from a mobile device
US6750850B2 (en) Viewer system for a wireless device
US8949361B2 (en) Methods for truncating attachments for mobile devices
US9319360B2 (en) Systems and methods for prefetching relevant information for responsive mobile email applications
EP2033411B1 (en) Method, apparatus and computer program product for providing automatic delivery of information to a terminal
US20100162167A1 (en) Interactive profile cards for mobile device
KR101763130B1 (en) Method and Apparatus for Providing User Interface
US8543927B1 (en) Methods for simulating icon popout on memory constrained devices
US20090158221A1 (en) Device feature manipulation based on presented content
US20030013483A1 (en) User interface for handheld communication device
US9678933B1 (en) Methods for auto-completing contact entry on mobile devices
US20140136640A1 (en) Systems and Methods for Supporting Downloadable Applications on a Portable Client Device
US20090164923A1 (en) Method, apparatus and computer program product for providing an adaptive icon
CN100579267C (en) Expression symbol call method and device
WO2006048722A2 (en) A word completion dictionary
JP2008515038A (en) Mobile communication terminal with improved user interface and method therefor
US8229495B1 (en) Ranked presentation of user-interface display elements in a user-interface skin
KR20100046087A (en) Mobile station for messaging web page contents of wireless internet browser and method thereof
US20080256487A1 (en) Method for managing user content in communication terminal
US20150326708A1 (en) System for wireless network messaging using emoticons
JP4096651B2 (en) Mobile communication terminal device, control method thereof, and program
JP4542690B2 (en) Forget call warning system
US20060064652A1 (en) Input of punctuation marks
WO2007118228A2 (en) Method for importing, processing and displaying data in spreadsheets
JP2007299276A (en) Information supply method, server and mobile communication terminal

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07760313

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07760313

Country of ref document: EP

Kind code of ref document: A2