"Can I view a formula as a math equation (like MathCad)?"
View formulas in Math notation

Formulas can be viewed as Math equations, using standard Math notation - like you learned at school.

When the 'Math Equation Viewer' is on:

  • Formulas are automatically displayed in Math notation.
  • References (cells) can be displayed as their address, their name (if they're a named range), their value or the value in the cell to the left of them.
  • If named ranges or 'cells to the left' contain the name of a Greek letter, such as alpha, beta, pi etc. then the equation will display the Greek symbol instead.
    • Greek letters can also be written with a leading '\' eg: \pi, \alpha. In fact, if a cell's value is a sentence that includes Greek letters, then the letter names MUST be preceeded with '\', otherwise they will be ignored.
  • Copy or save the current equation as an image by clicking the 'Copy' or 'Save' buttons on the menu above the equation.
  • When editing a formula, the Math viewer highlights ranges in same colors as formula-bar.
  • Save (or copy) any equation or shape on a worksheet by right-clicking it, then clicking 'FormulaDesk > Copy as image' or 'FormulaDesk > Save as image' on the pop-up menu.

Add live (auto-updating) equations to the worksheet

Add the equation displayed in the Math Equation viewer to the current worksheet. 'Live' equations will auto-update when the cell's formula changes.

To add a 'Live' equation, in the Math Equation viewer

  1. Click the 'Add to sheet (live)' ...or 'Add to sheet (static)' to add a non-auto-updating equation.
  2. For 'Live' equations, Click 'FormulaDesk > Go to cell' on the right-click menu to go to the source cell which has the formula on which the Live equation is based.

Quickly add Greek letters and subscripts

  1. To enter Greek letters into cells, type their name (eg: pi, alpha, beta), or if the cell contains more text in addition to the Greek letter, then prepend the Greek letter name with '\' (eg: \pi, \alpha, \beta).
  2. To enter subscripts, use an underscore (eg: d_x).
  3. Select the cells.
  4. Right-click the selected cells. In the pop-up menu, click 'FormulaDesk > Convert text to Greek letters and subscripts'
  5. A form will open, select your options then apply.
  6. The selected cells will be transformed!

Save (or copy) shape and equations as images

  1. Select the shape or equation.
  2. Right-click the selected cells. In the pop-up menu, click 'FormulaDesk > Copy as image' (or 'Save as image').
"I want to switch sheets & workbooks quickly...
Quick Navigator: press CTRL+TAB to switch to previous sheet, or select from list

Press and release CTRL+TAB to swicth between current sheet and previous one. Alternatively, pressing CTRL+TAB then releasing TAB but keeping CTRL pressed shows a pop-up navigation screen which allows you to switch between recently-viewed sheets quickly, even across workbooks. Keep CTRL pressed while using this screen. Releasing the CTRL key hides the screen and navigates to the currently selected sheet. Use TAB or DOWN_ARROW to move down and SHIFT+TAB or UP_ARROW to move up. Use LEFT_ARROW and RIGHT_ARROW to move left and right.

"I want to go back to where I was..."
Go backwards and forwards through visited cells

Click the 'Back' button to go back to previous cell or select a previous cell from the dropdown. Alternatively, press ALT+LEFT to go back one or ALT+RIGHT to go forward one.

"Is it possible to keep an eye on one part of my spreadsheet while I work in another part?"
Periscope: Head-Up-Display for Excel

See any part of your spreadsheet in it's own floating window. It will always show a live view, displaying updates as you edit another part of the spreadsheet.

You can create periscopes for ranges of cells and for charts.

Note: The periscope is view-only. You can't interact with or edit the contents of the periscope window.

  • Right-click a selected range of cells or chart.
  • Click 'FormulaDesk' > 'Create Periscope' on the pop-up menu.
"Can I freeze columns & rows on the right?"
Freeze Any Columns & Rows

Excel only allows you to freeze columns and rows on the left. With FormulaDesk you can now freeze any combination of columns and rows and make them appear on the right-hand side of the worksheet. Their values update in real-time as you make changes to your spreadsheet.

  • Select the column(s) or row(s) to freeze by clicking the column or row headers (hold down the CTRL button to select non-contiguous columns or rows).
  • Right-click the selected column.
  • Click 'Freeze columns' on the pop-up menu.
  • Add more columns at any time by following the same procedure above - they will be added to the frozen collection.
  • To close the frozen column, hover over the frozen columns and a close button will appear above them, at the top right.
"Why is my spreadsheet slow?"
Excel Profiler - find slow cells

FormulaDesk has a profiler which times the calculation speeds of the cells in your file. This is a performance tools that shows you exactly where your spreadsheet is slow and gives you the information you need to make your spreadsheet faster.

  • Calculation times.
  • Volatile cells - get a full list of all volatile cells and their calculation times.
  • Mini bar-charts make comparison easy.
  • Hovering over an address displays the underlying formula.
"What cells affect this cell? And how about this one?"
'Live view' of precedents & descendents

When 'Show Precedents' and/or 'Show Descendents' is turned on, as you click on different cells, their precedents/descendents are shown in realtime.

  • Live preview: hover over an arrow to display the precedent cell and its surrounding cells. This also works for precedents on other sheets (or scrolled off the screen) - no need to switch to the sheet to inspect the value.
  • Choose to view direct precedents only, or all levels at once.
  • Display arrows and/or highlight the precedents a different color.
  • Display precedents/descendents across all sheets, or limit to just the current sheet.
  • Pause the 'Live View' mode to stop automatically displaying precedents when other cells are clicked.
"Why is this formula giving me the wrong value?"
Inspect the calculation steps

See intermediate values in a single glance. A staggered view enables quicker understanding ie: no need to continually click the 'Evaluate formula' button multiple times to determine how a value is calculated anymore.

  • Hover over parts of a formula to get further information.
  • Write your formulas in the single line above the staggered view.
"There's an error in this long formula, but where?"
Pinpoint errors precisely

FormulaDesk pinpoints exactly where the error is. Normally, you have no idea exactly where or what the error is.

  • The 'deepest' error is usually the root-cause of 'upstream' errors.
  • Hovering over an error displays more information about the problem.
"This mega-formula is ridiculous..."
Break the formula into smaller steps

One-click to break complex formulas into small steps, which are then written to a new sheet, allowing you to work through the individual steps and gain a thorough understanding of the formula.

"So many cells...where am I, exactly?"
Track the active cell

Turn on the crosshairs feature to easily track the active cell. Easily see which cells are in the same column and row.

"How can I easily select and deselect many cells?"
Easy Select

Easily select and deselect multiple cells and ranges by clicking the 'Easy Select' button to turn 'Easy Selection mode' on, then start making your selections. When you're finished making selections, click the 'Easy Select' button again to turn 'Easy Selection mode' off again.

No need to hold down the CTRL key while selecting - just click and drag to select/deselect what you want.

"How can I find all volatile cells in my spreadsheet?"
Find all volatile cells (and their dependents)

The FormulaDesk profiler enables you to profile (time the calculation speeds) of all volatile cells - as well as their dependents (ie: cells that have a volatile formula, such as NOW(), as well as cells that reference that cell, and are therefore indirectly volatile).

"Why is my Excel file so big & slow?"
Trim Bloated Workbook

Excel files can grow big due to many blank cells. The 'Trim Bloated Workbook' feature can find these blank rows and columns for you, and gives you the option to delete them too.

If you receive a Too many different cell formats error in Excel, the 'Trim Bloated Workbook' features can tell you which custom styles in your spreadsheet are unused and can be deleted.

"My spreadsheet doesn't seem to work, then I realised that it was saved and opened in Manual calculation mode"
Get alerted when saving or opening with calculation mode set to Manual

If your workbook calculation mode is set to manual then that setting gets saved when you save the file. This means that when the file is opened by you or anyone else it will be in manual calculation mode. Sometimes that's what you want, but ususally it isn't. Also, when you open a file from someone else, do you remember to check the calculation mode every time, in case the other person saved it in manual mode?

FormulaDesk can alert you when you try to save a file with manual calculation mode on, or when you open a file that has manual calculation mode on.

"I want to combine multiple formulas into a single formula!"
Combine simple formulas into a mega-formula

Now you can easily create a formula by first splitting it between many cells, then combine them into a single mega-formula.

This makes it possible to compose formulas from small understandable sub-formulas.

When you're finished, copy the formula text from top line of the editor.

"Is there a way to resize array formula ranges correctly?"
Resize & Right-Size array formulas

Easily resize an array formula by selecting the range you want to resize it to, then right-click the selection and click the 'Resize array' item on the context (pop-up) menu, or the 'Resize array' on the top menu.

Easily right-size an array formula to exactly match it's dimensions by selecting a cell containing the array formula, then right-click the selection and click the 'Right-size array' item on the context (pop-up) menu, or the 'Right-size array' on the top menu.

"I want to find all the problems in my spreadsheet."
Workbook Detective finds problems

Use Workbook Detective searches all of your sheets, even the hidden ones, to find and list all:

  • Comments
  • Formula Errors
  • Usages of data connections
  • Invalid data (fails validation rules)
  • Links to external workbooks, where they are used in:
    • Cell formulas
    • Charts
    • Names
"Can I disable the F1, Insert, NumLock, ScrollLock and CapsLock keys?"
Disable nuisance keys

If you keep pressing special keys by mistake, you can now disable them (just inside Excel) so that they never bother you again while you're working in Excel.

You can disable and ignore the following keys:

  • F1
  • Insert
  • Num-Lock
  • Scroll-Lock
  • Caps-Lock
"Is it possible to rewrite part of a formula, everywhere?"
Refactor formulas - find/modify all instances of a formula

Now you can easily find formulas that contain a specific pattern. For example, say you want to find all formulas that contain the SUM function with three arguments anywhere in the formula Example: SUM(1, 2, 3)

It will find 'patterns' even when they are nested deeep inside a formula, no matter how complex the formula is.

The process of 'improving' or 'cleaning up' your formulas is technically known as Refactoring, and is usually applied to source-code in software programs. Now, you can refactor your Excel spreadsheets!

You can define the 'pattern' with placeholders for the variable content eg: SUM({a}, {b}, {c})

This pattern will be found in the following formulas:

  • =SUM(11, 22, 33)
    One pattern found. Variables:
    • {a}: 11
    • {b}: 22
    • {c}: 33

  • =A3 + G6 - SUM(H7, F1, 777) + 888
    One pattern found. Variables:
    • {a}: H7
    • {b}: F1
    • {c}: 777

  • =7 + SUM(11, IF(1 > 2, SUM(A1, B3, C1), 22), 33)

    Two patterns found:

    First pattern found. Variables:
    • {a}: 11
    • {b}: IF(1 > 2, SUM(A1, B3, C1), 22)
    • {c}: 33

    Second pattern found. Variables:
    • {a}: A1
    • {b}: B3
    • {c}: C1

Once cells with matching formulas are found, then you can choose to replace the pattern with another pattern. Replacement template text can use the variables defined in the 'find pattern' Eg: Using the example pattern above SUM({a}, {b}, {c}, we can write the replacement template text like this: ({a} + {b} + {c}). If we run this replacement on the formulas above we get the following outputs:

  • =SUM(11, 22, 33)
    gets transformed into: =(11 + 22 + 33)
  • =A3 + G6 - SUM(H7, F1, 777) + 888
    gets transformed into: =A3 + G6 - (H7 + F1 + 777) + 888
  • =7 + SUM(11, IF(1 > 2, SUM(A1, B3, C1), 22), 33)
    gets transformed into: =7 + (11 + IF(1 > 2, (A1 + B3 + C1), 22) + 33)

"How can I replace certain references in all formulas that use it?"
Replace references in formulas

This enables you to quickly and easily replace references (cell addresses) in formulas.

Specify the reference (use wildcards if you need to ('*' for multiple characters and '?' for single characters)


  • Sheet3!B45 (finds all formulas with this exact reference)
  • Sheet3!B* (finds all formulas with references to any cell in column B of Sheet3)
  • Sheet3!* (finds all formulas with references to any cell on Sheet3)


Specify the replacement as exact text, or using the following variables (note the use of curly braces!):

  • {Ref.Sheet} This is the name of the sheet in the discovered reference (if one was specified in the formula) including the '!'. If the discovered reference didn't include a sheet name, then this variable will be blank.
  • {Ref.Address} This is the address part of the discovered reference Eg: A5, B3



  • To replace all references to any cells on 'Sheet2' with the same cell address on the 'Totals' sheet:
    • Find pattern: Sheet2!*
    • Replacement pattern: Totals!{Ref.Address}
  • To replace all references to all sheets whose name starts with Sheet (eg: Sheet1, Sheet2, Sheet3) with NewSheet1, NewSheet2, NewSheet3 etc:
    • Find pattern: Sheet*!*
    • Replacement pattern: New{Ref.Sheet}{Ref.Address}
Built-in functions (UDF's)...
Remove volatility from volatile cell
=FD.Utility.RemoveVolatility(volatileCell, targetAddress)
Update the target address only when the volatileCell value changes, not on every recalculation of the volatile cell. This essentially removes the volatility of all dependent cells, as long as they refer to the new target cell instead of the volatile cell. Note: Tracing precedents will stop at the target cell because Excel has no way of knowing that the target cell refers to the volatile cell. In the same way, tracing dependents of the volatile cell won't identify the target cell as a dependent. This function returns the value of the volatile cell.
Learn more...
Run macro when cell value changes
=FD.Utility.RunMacroWhenValueChanges(cellToWatch, macroName, param1, param2, param3)
This function will run the specified macro with the specified parameters when the value of the target cell changes. ie: changing the value of the target cell causes the macro to run.
Learn more...
Create text from template with embedded placeholders
=FD.Text.ToStringFormat(format, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9)

Replaces the format items in the specified string with the string representation of the specified arguments.

Write this: =FD.Text.ToStringFormat("Hello {0}. How is the weather in {1}?", "Bob", "New York")
Instead of this: ="Hello" & "Bob" & ". How is the weather in " & "New York?"
Learn more...
Improved text concatenation
=FD.Text.Concatenate(arg, separator, [includeEmptyValues])
Concatenates the values of a range where the cells have a non-whitespace value.
Learn more...
Split text with delimiters
=FD.Text.Split(text, delimiter, indexToReturn)
Splits the text into parts, based on the delimiter. If a value is supplied for the 'indexToReturn' parameter, then it returns the part at the index specified by the 'indexToReturn' parameter. If no value is supplied for the 'indexToReturn' parameter, then an array is returned.
Learn more...
Convert a number to ordinal
=FD.Text.NumberToOrdinal(number, genderChar)
Converts a number into an ordinal string eg: 1 > 1st, 2 > 2nd etc.
Learn more...
Convert a number to words
=FD.Text.NumberToWords(number, culture, genderChar)
Converts a number into words eg: 1 > one, 53 > fifty three
Learn more...
Convert a number to ordinal words
=FD.Text.NumberToOrdinalWords(number, culture, genderChar)
Converts a number into ordinal words eg: 1 > first, 53 > fifty third
Learn more...
Convert a number to Roman numerals
Converts a number into Roman numerals eg: 5 > V, 12 > XII
Learn more...
Convert Roman numerals to a number
Converts a Roman numeral into a number eg: V > 5, XII > 12
Learn more...
Free Download