Next: Updating the table, Previous: Lookup functions, Up: The spreadsheet

You can edit individual formulas in the minibuffer or directly in the field.
Org can also prepare a special buffer with all active formulas of a table.
When offering a formula for editing, Org converts references to the standard
format (like `B3`

or `D&`

) if possible. If you prefer to only work
with the internal format (like `@3$2`

or `$4`

), configure the
option `org-table-use-standard-references`

.

`C-c =`or`C-u C-c = (``org-table-eval-formula`

`)`-
Edit the formula associated with the current column/field in the
minibuffer. See Column formulas, and Field and range formulas.
`C-u C-u C-c = (``org-table-eval-formula`

`)`-
Re-insert the active formula (either a
field formula, or a column formula) into the current field, so that you
can edit it directly in the field. The advantage over editing in the
minibuffer is that you can use the command
`C-c ?`. `C-c ? (``org-table-field-info`

`)`-
While editing a formula in a table field, highlight the field(s)
referenced by the reference at the cursor position in the formula.
`C-c }`- Toggle the display of row and column numbers for a table, using overlays
(
`org-table-toggle-coordinate-overlays`). These are updated each time the table is aligned; you can force it with`C-c C-c`. `C-c {`- Toggle the formula debugger on and off
(
`org-table-toggle-formula-debugger`). See below. `C-c ' (``org-table-edit-formulas`

`)`-
Edit all formulas for the current table in a special buffer, where the
formulas will be displayed one per line. If the current field has an
active formula, the cursor in the formula editor will mark it.
While inside the special buffer, Org will automatically highlight
any field or range reference at the cursor position. You may edit,
remove and add formulas, and use the following commands:
`C-c C-c`or`C-x C-s (``org-table-fedit-finish`

`)`-
Exit the formula editor and store the modified formulas. With
`C-u`prefix, also apply the new formulas to the entire table. `C-c C-q (``org-table-fedit-abort`

`)`-
Exit the formula editor without installing changes.
`C-c C-r (``org-table-fedit-toggle-ref-type`

`)`-
Toggle all references in the formula editor between standard (like
`B3`

) and internal (like`@3$2`

). `<TAB> (``org-table-fedit-lisp-indent`

`)`-
Pretty-print or indent Lisp formula at point. When in a line containing
a Lisp formula, format the formula according to Emacs Lisp rules.
Another <TAB> collapses the formula back again. In the open
formula, <TAB> re-indents just like in Emacs Lisp mode.
`M-<TAB> (``lisp-complete-symbol`

`)`-
Complete Lisp symbols, just like in Emacs Lisp mode.
^{1} `S-<UP>/<DOWN>/<LEFT>/<RIGHT>`- Shift the reference at point. For example, if the reference is
`B3`

and you press`S-<RIGHT>`, it will become`C3`

. This also works for relative references and for hline references. `M-S-<UP> (``org-table-fedit-line-up`

`)``M-S-<DOWN> (``org-table-fedit-line-down`

`)`-
Move the test line for column formulas in the Org buffer up and
down.
`M-<UP> (``org-table-fedit-scroll-down`

`)``M-<DOWN> (``org-table-fedit-scroll-up`

`)`-
Scroll the window displaying the table.
`C-c }`- Turn the coordinate grid in the table on and off.

Making a table field blank does not remove the formula associated with
the field, because that is stored in a different line (the `#+TBLFM`

line)—during the next recalculation the field will be filled again.
To remove a formula from a field, you have to give an empty reply when
prompted for the formula, or to edit the `#+TBLFM`

line.

You may edit the `#+TBLFM`

directly and re-apply the changed
equations with `C-c C-c` in that line or with the normal
recalculation commands in the table.

`#+TBLFM`

lines
You may apply the formula temporarily. This is useful when you
switch the formula. Place multiple `#+TBLFM`

lines right
after the table, and then press `C-c C-c` on the formula to
apply. Here is an example:

| x | y | |---+---| | 1 | | | 2 | | #+TBLFM: $2=$1*1 #+TBLFM: $2=$1*2

Pressing `C-c C-c` in the line of ‘`#+TBLFM: $2=$1*2`’ yields:

| x | y | |---+---| | 1 | 2 | | 2 | 4 | #+TBLFM: $2=$1*1 #+TBLFM: $2=$1*2

Note: If you recalculate this table (with `C-u C-c *`, for example), you
will get the following result of applying only the first `#+TBLFM`

line.

| x | y | |---+---| | 1 | 1 | | 2 | 2 | #+TBLFM: $2=$1*1 #+TBLFM: $2=$1*2

When the evaluation of a formula leads to an error, the field content
becomes the string ‘`#ERROR`’. If you would like see what is going
on during variable substitution and calculation in order to find a bug,
turn on formula debugging in the `Tbl`

menu and repeat the
calculation, for example by pressing `C-u C-u C-c = <RET>` in a
field. Detailed information will be displayed.

[1] Many desktops
intercept `M-<TAB>` to switch windows. Use `C-M-i` or
`<ESC> <TAB>` instead for completion (see Completion).