Date Added: Jun 2009
Spreadsheets are ubiquitous end-user programming tools, but lack even the simplest abstraction mechanism: The ability to encapsulate a computation as a function. This paper presents a solution in the form of sheet-defined functions, which are built from well-known spreadsheet cells, formulas and references. They should be understandable to most spreadsheet users, yet offer far more programming power than standard spreadsheet programs. The paper presents a prototype implementation of sheet-defined functions and several example applications, and show that they perform as well as built-in functions, and much better than user-defined functions in external languages such as VBA.