6.2. Formulas

Formulas are the key to making a powerful spreadsheet. A formula can perform calculations on almost anything, including single numbers, cells of data ("cell references"), ranges of cells, arrays of cells, and more.

6.2.1. Syntax

Formulas are distinguished from regular data by an equals sign, '=,' as the first character. Everything following a '=' is evaluated as a formula, not a string or a number.

TipAlternate Beginnings for Formulas
 

To accomodate those more familiar with Lotus spreadsheets, Gnumeric recognizes the at symbol as the beginning of a formula. The plus and minus characters (+ and -) may also start formulas that involve calculation, but when used in front of a single number indicate the sign of the number.

The simplest formulas just use the standard math operator and symbols. Addition, subtraction, multiplication, and division are represented by +, -, *, and /, just as you would expect. +,- can be placed in front of numbers to indicate sign, as well.

6.2.2. Using Functions

Most of the standard math, business, statistical, and scientific calculations are implemented in terms of functions. Functions are in the form of:

While the documentation generally refers to functions and to cells in capital letters, their use is not actually case sensitive.

Where a function takes multiple arguments such as the SUM example, the number of arguments effectively unlimited.

6.2.3. Names

Names help to simplify complex formulae. A name is assinged to a formula which will be evaluated when it is referred to in another formula. Names are particularly useful for labeling cell ranges.

Names are defined using the Insert Name dialog. This allows manipulation of all the names in the related workbook. A name is restrained from taking that of a function, since this would cause confusion.

In addition to the names you define there are built in names:

6.2.4. Array Formulas

It is periodically useful or necessary to have an expression return a matrix rather than a single value. The first example most people think of are matrix operations such as multiplication, transpose, and inverse. A less obvious usage is for data retrieval routines (databases, realtime data-feeds) or functions with vector results (yield curve calculations).