Design of spreadsheet functions for working with tables of data
First Claim
1. A computer-implemented method for manipulating a table of data in a spreadsheet application, the method comprising:
- receiving one or more database functions within a cell of the spreadsheet application;
receiving a selection for input data comprising one or more cells of the table of data, wherein the input data resides within the spreadsheet application;
manipulating the input data according to the one or more database functions, wherein manipulating comprises;
determining that the one or more database functions can be applied row-by-row;
andapplying the determined database functions to each row separately, wherein prior to applying the determined database functions, the determined database functions are ordered based on processing efficiency; and
presenting output data in the spreadsheet application, wherein the output data is anchored in the cell in which the one or more database functions are received, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides several database formulas that can manipulate large sets of data. Each database formula is customizable and repeatable without user intervention. Thus, users may enter numerous options that can cover the user'"'"'s desire for data output in certain forms or formats, select a set of input data, and consistently receive a set of output data. In some embodiments, the user may refer to the set of data semantically instead of specifying a range of cells to use in the database formula. Referring to the data semantically allows the database formulas to adjust to changes in the range of cells new data may occupy.
97 Citations
45 Claims
-
1. A computer-implemented method for manipulating a table of data in a spreadsheet application, the method comprising:
-
receiving one or more database functions within a cell of the spreadsheet application; receiving a selection for input data comprising one or more cells of the table of data, wherein the input data resides within the spreadsheet application; manipulating the input data according to the one or more database functions, wherein manipulating comprises; determining that the one or more database functions can be applied row-by-row;
andapplying the determined database functions to each row separately, wherein prior to applying the determined database functions, the determined database functions are ordered based on processing efficiency; and presenting output data in the spreadsheet application, wherein the output data is anchored in the cell in which the one or more database functions are received, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer storage medium having computer-executable instructions for performing steps comprising:
-
receiving one or more database functions within a cell of a spreadsheet application; receiving a selection for input data comprising one or more cells of the table of data, wherein the input data resides within the spreadsheet application; manipulating the input data according to the one or more database functions, wherein manipulating comprises; determining that the one or more database functions can be applied row-by-row; and applying the determined database functions to each row separately, wherein prior to applying the determined database functions, the determined database functions are ordered based on processing efficiency; and presenting output data in the spreadsheet application, wherein the output data is anchored in the cell in which the one or more database functions are received, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A system for manipulating a table of data in a spreadsheet application, comprising:
-
a processor; a memory, communicatively coupled to the processor and including instructions that, when executed by the processor, perform the following method; receiving a selection of one of one or more database functions, including one or more arguments, wherein the one or more database functions are received within a cell of the spreadsheet application; receiving a selection of input data comprising one or more cells of the table of data, wherein the input data resides within the spreadsheet application; parsing out the one or more arguments and the one or more database functions; determining that one or more arguments or one or more database functions can be applied row-by-row; applying the determined arguments and database functions to each row separately, wherein prior to applying the arguments or database functions, the arguments or functions are ordered based on processing efficiency; applying any remaining arguments or database functions; and presenting output data in the spreadsheet application, wherein the output data is anchored in the cell in which the one or more database functions are received, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data. - View Dependent Claims (34, 35)
-
-
36. A computer storage medium having computer-executable instructions for performing steps comprising:
-
receiving a selection of one of one or more database functions, including one or more arguments, wherein the one or more database functions are received within a cell of the spreadsheet application; receiving a selection of input data comprising one or more cells of the spreadsheet application, wherein the input data resides within the spreadsheet application; parsing out the one or more arguments and the one or more database functions; determining that one or more arguments can be applied row-by-row to the selection of input data; applying the determined arguments to each row separately, wherein prior to applying the determined arguments, the determined arguments are ordered based on processing efficiency; applying any remaining arguments; and presenting the output data in the spreadsheet, wherein the output data is anchored in the cell in which the one or more database functions are received, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data. - View Dependent Claims (37, 38)
-
-
39. In a computer system having a graphical user interface including a display device and a user interface selection device, a computer-implemented method of receiving one or more database functions to apply to a set of input data, comprising the steps of:
-
receiving a selection of input data comprising one or more cells of the spreadsheet application, wherein the input data resides within a spreadsheet application; receiving one or more database functions to apply to the selection of input data, wherein the one or more database function are received in one or more cells of the spreadsheet application; determining that the one or more database functions can be applied row-by-row to the selection of input data; and separately applying the one or more database functions to each row of the selection of input data, wherein prior to separately applying the one or more database functions, the one or more database functions are ordered based on processing efficiency; and displaying output data after the one or more database functions have been applied to the input data, wherein the output data is displayed in a spreadsheet application and anchored in the one or more cells of the spreadsheet application that received the one or more database functions, wherein the output data is presented as an array of data comprising more than one cell of the spreadsheet application, and wherein the array is separate from the table of data. - View Dependent Claims (40, 41, 42, 43, 44, 45)
-
Specification