IP Library › Granted Patent US 12,737,536
Granted Patent B2
US 12,737,536 · App. 18/656,523 · Granted Sep 15, 2026

Method and system for spreadsheet error identification and avoidance

Inventor: Robert E. Dvorak (Portola Valley, CA)
Assignee: Adaptam Inc.
G06F40/18G06F3/0482
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,737,536
App. No.
18/656,523
Granted
Sep 15, 2026
Kind
B2
Abstract

Disclosed is a method of as you type error checking of a spreadsheet formula as a user types the formula in a cell, including analyzing, as you type, the cell contents of the spreadsheet formula and throwing an error message when the cell contents are not valid in the formula being typed. The error message identifies/emphasizes a token or group of tokens that cause the error. Also disclosed is selecting and populating into a spreadsheet formula a formulaic data field to be evaluated, starting from a position in the spreadsheet formula where the formulaic data field to be evaluated is to be populated, and responding to typed inputs and/or UI selection by displaying a list of selectable formulaic data fields with additional information that contains (non-data derived) human generated values. Upon selection among the fields, the method includes automatically populating into the starting position in the spreadsheet formula.

Claims (46)

1 . A method for selecting and populating into a spreadsheet formula an argument in a formulaic data field to be evaluated, including:

starting from a position to be populated in an argument list of the formulaic data field in the spreadsheet formula to be evaluated, wherein:

the formulaic data field is a named data field within the a source of the formulaic data; and

formulaic data is sourced from either non-spreadsheet cells (NCS) or from spreadsheet cells, both sources being organized by named data fields;

responding to typed inputs and/or UI selection for the starting position to be populated by displaying a list of selectable options, the selectable options including direct and indirect filter options for the formulaic data field, wherein:

the direct filter options include values and retrievers that apply to the formulaic data field itself; and

the indirect filter options include constraints on fields from a same table as the formulaic data field; and

upon selection among the selectable options, automatically populating a selected direct or indirect filter applicable to formulaic data field into the starting position.

2 . The method of claim 1 , further including responding to the typed inputs and/or UI selection with additional information for the list of selectable options, including informative descriptions of data field content of the formulaic data fields in the list, and informative and descriptive information beyond data field names.

3 . The method of claim 1 , further including displaying the direct and indirect filter options in separate selection list buckets.

4 . The method of claim 1 , wherein the direct filter list of selectable options displayed is context sensitive to whether the formulaic data field in the spreadsheet formula can populate into the starting position multiple values, as opposed to a single value.

5 . The method of claim 1 , wherein direct filter list of selectable options displayed is context sensitive to a prebuilt spreadsheet function being applied to the formulaic data field in the spreadsheet formula being evaluated.

6 . The method of claim 1 , wherein the direct and/or indirect filter list of selectable options displayed are context sensitive to and limited by prior argument values of the formulaic data field in the spreadsheet formula being evaluated.

7 . The method of claim 1 , wherein, in the indirect filter list of selectable options, indirect filter option(s) already in use for the formulaic data field are visually differentiated from the unused indirect filter options.

8 . The method of claim 1 , wherein, in the indirect filter list of selectable options, one or more indirect filter option(s) already in use for the formulaic data field are disabled from selection in the indirect filter options.

9 . The method of claim 1 , wherein the direct and indirect filter lists of selectable options displayed are context sensitive to the data type of the formulaic data field.

10 . The method of claim 1 , wherein the direct and/or indirect filter list of selectable options displayed are context sensitive to values present in the formulaic data field.

11 . The method of claim 2 , wherein additional information in the direct and/or indirect filter list of selectable options displayed is context sensitive to the data type of the formulaic data field.

12 . The method of claim 1 , wherein the selection of the option automatically populates a text or date data type into a direct filter selection with a proper text or date syntax.

13 . The method of claim 1 , wherein the indirect filter options further include fields from a different table than the formulaic data field.

14 . The method of claim 1 , wherein selection of an indirect formulaic data field for the indirect filter causes display a context-sensitive list of selectable indirect filter options.

15 . The method of claim 1 , wherein selection of a second indirect filter to replace a first indirect filter automatically eliminates direct filter options specified for the first indirect filter.

16 . The method of claim 1 , further including causing display a hint for the selection, wherein the hint includes non-selectable instructional text, selection options, and non-selectable headers.

17 . A non-transitory computer readable medium impressed with instructions that, when executed on a processor, implement actions for selecting and populating into a spreadsheet formula an argument in a formulaic data field to be evaluated, including:

starting from a position to be populated in an argument list of the formulaic data field in the spreadsheet formula to be evaluated, wherein:

the formulaic data field is a named data field within a source of the formulaic data; and

formulaic data is sourced from either non-spreadsheet cells (NCS) or from spreadsheet cells, both sources being organized by named data fields;

responding to typed inputs and/or UI selection for the starting position to be populated by displaying a list of selectable options, the selectable options including direct and indirect filter options for the formulaic data field, wherein:

the direct filter options include values and retrievers that apply to the formulaic data field itself; and

the indirect filter options include constraints on fields from a same table as the formulaic data field; and

upon selection among the selectable options, automatically populating a selected direct or indirect filter applicable to formulaic data field into the starting position.

18 . The non-transitory computer readable medium of claim 17 , wherein, in the indirect filter list of selectable options, indirect filter option(s) already in use for the formulaic data field are visually differentiated from the unused indirect filter options.

19 . The non-transitory computer readable medium of claim 17 , wherein the direct and/or indirect filter list of selectable options displayed are context sensitive to values present in the formulaic data field.

20 . The non-transitory computer readable medium of claim 17 , wherein the argument list begins and ends with curly brackets.

21 . The non-transitory computer readable medium of claim 17 , wherein the selection of the option automatically populates a text or date data type into a direct filter selection with a proper text or date syntax.

22 . A computer-implemented system including at least one processor and memory coupled to the processor, the memory holding program instructions that implements a method for selecting and populating into a spreadsheet formula an argument in a formulaic data field to be evaluated, including:

starting from a position to be populated in an argument list of the formulaic data field in the spreadsheet formula to be evaluated, wherein:

the formulaic data field is a named data field within a source of the formulaic data; and

formulaic data is sourced from either non-spreadsheet cells (NCS) or from spreadsheet cells, both sources being organized by named data fields;

responding to typed inputs and/or UI selection for the starting position to be populated by displaying a list of selectable options, the selectable options including direct and indirect filter options for the formulaic data field, wherein:

the direct filter options include values and retrievers that apply to the formulaic data field itself; and

the indirect filter options include constraints on fields from a same table as the formulaic data field; and

upon selection among the selectable options, automatically populating a selected direct or indirect filter applicable to formulaic data field into the starting position.

23 . A computer system of claim 22 , wherein the direct filter list of selectable options displayed is context sensitive to whether the formulaic data field in the spreadsheet formula can populate into the starting position multiple values, as opposed to a single value.

24 . A computer system of claim 22 , wherein direct filter list of selectable options displayed is context sensitive to a prebuilt spreadsheet function being applied to the formulaic data field in the spreadsheet formula being evaluated.

25 . A computer system of claim 22 , wherein the direct and/or indirect filter list of selectable options displayed are context sensitive to and limited by prior argument values of the formulaic data field in the spreadsheet formula being evaluated.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2024
From: DVORAK, ROBERT E.
To: ADAPTAM, INC.
Reel/Frame 067327/0075 →
Continuity (3)
Continuation 17752814 · May 24, 2022
Provisional Application 63192475 · May 24, 2021
Related Publication 20240362408A1 · Oct 31, 2024
References Cited (113)
US 5815421A · Dulong et al. · 1998 [cited by applicant]
US 6038567A · Young · 2000 [cited by applicant]
US 6317750B1 · Tortolani et al. · 2001 [cited by applicant]
US 6985895B2 · Witkowski et al. · 2006 [cited by applicant]
US 6988241B1 · Guttman et al. · 2006 [cited by applicant]
US 7099890B2 · Cahill et al. · 2006 [cited by applicant]
US 7117435B1 · Kotler et al. · 2006 [cited by applicant]
US 7120866B2 · Kotler et al. · 2006 [cited by applicant]
US 7155667B1 · Kotler et al. · 2006 [cited by applicant]
US 7302444B1 · Dunmore et al. · 2007 [cited by applicant]
US 7350141B2 · Kotler et al. · 2008 [cited by applicant]
US 7370274B1 · Stuple et al. · 2008 [cited by applicant]
US 7412645B2 · Kotler et al. · 2008 [cited by applicant]
US 7506242B2 · Kotler et al. · 2009 [cited by applicant]
US 7506243B2 · Kotler et al. · 2009 [cited by applicant]
US 7523390B2 · Kotler et al. · 2009 [cited by applicant]
US 7546533B2 · Sareen et al. · 2009 [cited by applicant]
US 7549115B2 · Kotler et al. · 2009 [cited by applicant]
US 7673227B2 · Kotler et al. · 2010 [cited by applicant]
US 7702997B2 · Kotler et al. · 2010 [cited by applicant]
US 7702998B2 · Kotler et al. · 2010 [cited by applicant]
US 7810032B2 · Bauchot et al. · 2010 [cited by applicant]
US 8140549B2 · Barinaga · 2012 [cited by applicant]
US 8286072B2 · Chamberlain et al. · 2012 [cited by applicant]
US 8312371B2 · Ording · 2012 [cited by applicant]
US 8341512B2 · Sol et al. · 2012 [cited by applicant]
US 8726143B2 · Simkhay et al. · 2014 [cited by applicant]
US 9092412B2 · Salch et al. · 2015 [cited by applicant]
US 9305176B2 · Gloski et al. · 2016 [cited by applicant]
US 9436637B2 · Kommanaboyina · 2016 [cited by applicant]
US 9558232B1 · Taylor et al. · 2017 [cited by applicant]
US 9727989B2 · Garg et al. · 2017 [cited by applicant]
US 9990349B2 · Campbell et al. · 2018 [cited by applicant]
US 10019758B2 · Bartolucci · 2018 [cited by applicant]
US 10140352B2 · Hariharan et al. · 2018 [cited by applicant]
US 10409892B2 · Rothschiller et al. · 2019 [cited by applicant]
US 10685174B2 · Bastide et al. · 2020 [cited by applicant]
US 11036929B2 · Dvorak · 2021 [cited by applicant]
US 20020036662A1 · Gauthier et al. · 2002 [cited by applicant]
US 20020152255A1 · Smith et al. · 2002 [cited by applicant]
US 20020169799A1 · Voshell · 2002 [cited by applicant]
US 20030009411A1 · Ram et al. · 2003 [cited by applicant]
US 20030110191A1 · Handsaker et al. · 2003 [cited by applicant]
US 20030212953A1 · Serraf · 2003 [cited by applicant]
US 20040100502A1 · Ren · 2004 [cited by examiner]
US 20040158557A1 · Welcker et al. · 2004 [cited by applicant]
US 20050015379A1 · Aureglia et al. · 2005 [cited by applicant]
US 20050044496A1 · Kotler et al. · 2005 [cited by applicant]
US 20060069635A1 · Ram et al. · 2006 [cited by applicant]
US 20060129809A1 · Battagin et al. · 2006 [cited by applicant]
US 20060129929A1 · Weber · 2006 [cited by examiner]
US 20060131383A1 · Battagin et al. · 2006 [cited by applicant]
US 20070005635A1 · Martinez et al. · 2007 [cited by applicant]
US 20070136666A1 · Khen et al. · 2007 [cited by applicant]
US 20080027914A1 · Caputo · 2008 [cited by examiner]
US 20080126983A1 · Keohane · 2008 [cited by examiner]
US 20080168341A1 · Payette · 2008 [cited by examiner]
US 20090031205A1 · Aureglia et al. · 2009 [cited by applicant]
US 20090031206A1 · Aureglia et al. · 2009 [cited by applicant]
US 20090044090A1 · Gur · 2009 [cited by examiner]
US 20090044091A1 · Gur · 2009 [cited by examiner]
US 20090044094A1 · Rapp · 2009 [cited by examiner]
US 20090228776A1 · Folting et al. · 2009 [cited by applicant]
US 20090276692A1 · Rosner · 2009 [cited by examiner]
US 20100058163A1 · Garcia-Molina · 2010 [cited by examiner]
US 20100211862A1 · Parish et al. · 2010 [cited by applicant]
US 20110314415A1 · Fitzmaurice · 2011 [cited by examiner]
US 20120110001A1 · Young · 2012 [cited by applicant]
US 20130013994A1 · Handsaker et al. · 2013 [cited by applicant]
US 20130021377A1 · Doll · 2013 [cited by applicant]
US 20130073939A1 · Honsowetz · 2013 [cited by applicant]
US 20130073940A1 · Honsowetz · 2013 [cited by examiner]
US 20130091419A1 · Caliman et al. · 2013 [cited by applicant]
US 20140372854A1 · Otero · 2014 [cited by examiner]
US 20150081727A1 · Zarras · 2015 [cited by examiner]
US 20150082137A1 · Zarpas · 2015 [cited by applicant]
US 20150149893A1 · Lukic et al. · 2015 [cited by applicant]
US 20150169530A1 · Otero · 2015 [cited by examiner]
US 20150169532A1 · Otero et al. · 2015 [cited by applicant]
US 20150199328A1 · Danziger et al. · 2015 [cited by applicant]
US 20150254226A1 · Renshaw et al. · 2015 [cited by applicant]
US 20160055139A1 · Creason et al. · 2016 [cited by applicant]
US 20160124932A1 · Chen et al. · 2016 [cited by applicant]
US 20160142488A1 · Adler et al. · 2016 [cited by applicant]
US 20160371249A1 · Chilakamarri et al. · 2016 [cited by applicant]
US 20170004125A1 · Honsowetz · 2017 [cited by applicant]
US 20170124046A1 · Campbell et al. · 2017 [cited by applicant]
US 20170124049A1 · Campbell et al. · 2017 [cited by applicant]
US 20170124053A1 · Campbell · 2017 [cited by examiner]
US 20170124054A1 · Campbell et al. · 2017 [cited by applicant]
US 20170124142A1 · Becker et al. · 2017 [cited by applicant]
US 20190012305A1 · Dvorak · 2019 [cited by applicant]
US 20190012306A1 · Dvorak · 2019 [cited by applicant]
US 20190215172A1 · Hite · 2019 [cited by examiner]
US 20190340219A1 · Schoedl · 2019 [cited by applicant]
US 20190340252A1 · Huyghe · 2019 [cited by examiner]
US 20200034415A1 · Gordon et al. · 2020 [cited by applicant]
US 20200167321A1 · Sheehan et al. · 2020 [cited by applicant]
US 20200184149A1 · Honsowetz et al. · 2020 [cited by applicant]
US 20200257852A1 · Canton et al. · 2020 [cited by applicant]
US 20200285694A1 · Nield · 2020 [cited by applicant]
US 20200302013A1 · Stegmaier · 2020 [cited by examiner]
US 20210209296A1 · Prakash et al. · 2021 [cited by applicant]
JP 2004078375A · 2004 [cited by applicant]
“Parts of an Algebraic Expression”, Nelson Mathematics Secondary Year Two, Cycle One, 2009, Nelson Education Ltd., 4 pages. [cited by applicant]
“Apply multiple styles to single text selection”, Microsoft Community , answers.microsoft, com, Apr. 9, 2018, 3 pages (accessed Apr. 21, 2020 at https://answers.microsoft.com/en-us/msoffice/forum/msoffice_word-mso_mac-m… [cited by applicant]
Understanding Styles in Microsoft Word—A Tutorial in the Intermediate Users Guide to Microsoft Word, last edited by Charles Kenyon on Apr. 30, 2017, retrieved from http://www.addbalance.com/usersguide/styles.htm, archiv… [cited by applicant]
“Copying Formulas and using Relative and Absolute Cell References Tutorial”, Mar. 16, 2016, www.teststeststests. com, pp. 1-13 (Year: 2016). [cited by applicant]
“How to create and share custom Stylesheets in Microsoft Word”, PC World Magazine, Sep. 14, 2014, 13 pages (downloaded from https://web.archive.org/web/20140914082635/https://www.pcworld.com/article/2156364/how-to-creat… [cited by applicant]
Sartain, JD, “How to create and share custom Style Sheets in Wordand PowerPoint”, PC World Magazine, Aug. 8, 2018, 11 pages (downloaded from https://www.pcworld.com/article/2156364/how-to-create-and-share-custom-style-s… [cited by applicant]
Mynda Treacy, Excel Vlookup Multiple Sheets, Nov. 21, 2012, My Online Training Hub, pp. 1-7 (Year: 2012). [cited by applicant]
Microsoft Support—Turn on or off automatic bullets or numbering (downloaded from https://support.microsoft.com/en-us/office/turn-on-or-off-automatic-bullets-or-numbering-ac3d9d00-0bb6-4421-92a6-f73e564ce71e&gt. [cited by applicant]
Microsoft Support—Define new bullets, numbers, and multilevel lists (downloaded from https://support.microsoft.com/en-us/office/define-new-bullets-numbers-and-multilevel-lists-6c06ef65-27ad-4893-80c9-0b944cb81f5f#style … [cited by applicant]