Troubleshoot formulas
Find a formula error, read the message, and correct unknown names, loops, wrong periods, and wrong totals.
Eigenn checks a formula before it saves it, and again when it calculates the model. Use this page to find the cause of an error message or of a value that looks wrong. The messages on this page are the exact text that Eigenn shows.
Find the error
- In the formula bar, the message shows below the field. Enter does not save until you correct it.
- In the grid, a cell that cannot calculate shows Error. The Formula column shows a warning icon. Point to the cell or the icon to read the message.
Unknown names
| Message | Cause and correction |
|---|---|
No variable or function called "Revnue". | The name does not match a variable. Correct the spelling, or select the name from the suggestions |
No variable or function called "roud". Did you mean `round`? | The name is close to a function name. Use the suggested name |
Call sum with parentheses, for example sum(...). | A function name has no parentheses. Add the arguments, such as sum(Revenue[all]) |
Unexpected "1" | The variable name starts with a helper name, such as Year 1 revenue. Rename the variable |
Syntax errors
| Message | Cause and correction |
|---|---|
Expected "else" | An if has no else part. Add else and a result |
Expected a closing parenthesis | A ( has no ). Add the missing parenthesis |
The formula ends unexpectedly | The formula ends after an operator or a keyword. Complete the expression |
Unexpected "," | A number has a thousands separator, such as 1,500. Remove the comma |
Unrecognized input at ".5 * 2" | A character is not valid in that place. Write 0.5, not .5 |
round(number, [decimal_places]) takes 1–2 arguments, not 3 | The function has too many or too few arguments. Read its signature |
Fill in {rate} — Tab moves to the next | A placeholder from a template or a function is still in the formula. Replace it. Enter does not save until you replace all placeholders |
Add a formula before saving. | The formula is empty |
Circular references
| Message | Cause and correction |
|---|---|
A formula cannot reference itself. | The variable reads itself in the same period, such as Profit[this]. Use Profit[previous] |
This would create a loop: Gross profit → Net income. | Two or more formulas read each other in the same period. Change one formula to read the previous period, or move part of the calculation to an input |
This would create a temporal loop: A[t] → B[t-1] → A[t]. | Formulas read each other across periods, and the offsets cancel out. For example, A reads B[previous] and B reads A[t+1]. Remove the forward reference |
This would create a loop in this period. | A period formula reads a value that depends on that same cell |
In the grid, the cell message for a loop starts with This formula creates a, such as This formula creates a loop: Gross profit → Net income.
The value is in the wrong period
- A variable that names itself without brackets reads its previous period. Write
[previous]to make this clear. - A cell with a small ƒ mark has a period formula. Select the cell, press F2, and select Use all-period formula.
- Actual periods show the source values, not the formula result. Check the last actual date of the model.
- In the first periods,
[previous]and[t-12]have no period to read. Check the Blanks in data setting of the variable that you read. Revenue[1]is the second period, because positions count from 0."Revenue" reads several periods here — wrap it in sum() or avg()means a range is outside a function. Writesum(Revenue[t-2:t]).
The total is wrong
- The total row of a dimension uses the dimension aggregation of the variable. To change it, select the options button (⋮) on the row, then Aggregation → Dimension. For a rate or a ratio, select Formula, not Sum.
- Quarter and year columns use the time aggregation of the variable.
- An item row can have its own formula. Open it and select Use parent formula to go back.
Revenue by Regionin a variable without that dimension gives the sum of the items. A plainRevenuereads the total row.A formula cannot combine dimensions: Region, Product.means that the formula usesbywith two dimensions. Use one dimension, or select items in brackets.Missing dimension path: "Revenue" cannot map to "Region".means that Revenue has no Region breakdown and no item link to it.
The value is not valid
| Message | Cause and correction |
|---|---|
Invalid number error. | A division by zero, or a result that is too large. Use if_error(Revenue / Units, 0) |
Text is only valid where a formula function accepts it. | Text in quotes is outside a function that takes text. Remove the quotes |
currency() needs a three-letter currency code, such as "USD". | The currency code is not three letters |
The value does not update
When the values are not up to date, the model shows a Calculation status.
- Calculation: Stale shows
Values are from the last successful calculation. - Calculation: Failed shows
The last calculation failed. Last successful values remain visible. - In manual mode, select Run calculation after your changes.