Remove or allow a circular reference
Remove or allow a circular reference
You've entered a formula, but it's not working. Instead, you've got this message about a "circular reference." Millions of people have the same problem, and it happens because your formula is trying to calculate itself, and you have a feature called iterative calculation turned off. Here's what it looks like:
The formula =D1+D2+D3 breaks because it lives in cell D3, and it's trying to calculate itself.
To fix the problem, you can move the formula to another cell (in the formula bar, press Ctrl+X to cut the formula, select another cell, and press Ctrl+V). You can also try one of these techniques:
-
If you just entered a formula, start with that cell and check to see if you refer to the cell itself. For example, cell A3 might contain the formula =(A1+A2)/A3. Another common mistake is a SUM function that includes a reference to itself; for example, cell A12 contains =SUM(A1:A12). Formulas such as =A1+1 also cause circular reference errors.
While you're looking, check for indirect references. They happen when you put a formula in cell A1, and it uses another formula in B1 that in turn refers back to cell A1. If this confuses you, imagine what it does to Excel.
-
If you can't find the error, click the Formulas tab, click the arrow next to Error Checking, point to Circular References, and then click the first cell listed in the submenu.
-
Review the formula in the cell. If you can't determine whether the cell is the cause of the circular reference, click the next cell in the Circular References submenu.
-
Continue to review and correct the circular references in the workbook by repeating steps any or all of the steps 1 through 3 until the status bar no longer displays "Circular References."
Tips
-
If you're brand new to working with formulas, see Overview of formulas in Excel.
-
The status bar in the lower-left corner displays Circular References and the cell address of one circular reference.
If you have circular references in other worksheets, but not in the active worksheet, the status bar displays only "Circular References" with no cell addresses.
-
You can move between cells in a circular reference by double-clicking the tracer arrow. The arrow indicates the cell that affects the value of the currently selected cell. You show the tracer arrow by clicking Formulas, and then click either Trace Precedents or Trace Dependents.
Learn about the circular reference warning message
The first time Excel finds a circular reference, it displays a warning message. Click OK or close the message window. If you are on Excel for Windows, click Help to go to this help topic.
When you close the message, Excel displays either a zero or the last calculated value in the cell. And now you're probably saying, "Hang on, a last calculated value?" Yes. In some cases, a formula can run successfully before it tries to calculate itself. For example, a formula that uses the IF function may work until a user enters an argument (a piece of data the formula needs to run properly) that causes the formula to calculate itself. When that happens, Excel retains the value from the last successful calculation.
If you suspect you have a circular reference in a cell that isn't showing a zero, try this:
-
Click the formula in the formula bar, and then press Enter.
Important In many cases, if you create additional formulas that contain circular references, Excel won't display the warning message again. The following list shows some, but not all, the scenarios in which the warning message will appear:
-
You create the first instance of a circular reference in any open workbook
-
You remove all circular references in all open workbooks, and then create a new circular reference
-
You close all workbooks, create a new workbook, and then enter a formula that contains a circular reference
-
You open a workbook that contains a circular reference
-
While no other workbooks are open, you open a workbook and then create a circular reference
Learn about iterative calculation
At times, you may want to use circular references because they cause your functions to iterate—repeat until a specific numeric condition is met. This can slow your computer down, so iterative calculations are usually turned off in Excel.
Unless you're familiar with iterative calculations, you probably won't want to keep any circular references intact. If you do, you can enable iterative calculations, but you need to determine how many times the formula should recalculate. When you turn on iterative calculations without changing the values for maximum iterations or maximum change, Excel stops calculating after 100 iterations, or after all values in the circular reference change by less than 0.001 between iterations, whichever comes first. However, you can control the maximum number of iterations and the amount of acceptable change.
-
If you're using Excel for Windows, click File > Options > Formulas. If you're using Excel for Mac, click the Excel menu, and then click Preferences > Calculation.
If you're using Excel 2007, click the Microsoft Office Button , click Excel Options, and then click the Formulas category.
-
In the Calculation options section, select the Enable iterative calculation check box. On the Mac, click Use iterative calculation.
-
To set the maximum number of times that Excel will recalculate, type the number of iterations in the Maximum Iterations box. The higher the number of iterations, the more time that Excel needs to calculate a worksheet.
-
In the Maximum Change box, type the smallest value required for iteration to continue. This is the smallest change in any calculated value. The smaller the number, the more precise the result and the more time that Excel needs to calculate a worksheet.
An iterative calculation can have three outcomes:
-
The solution converges, which means a stable end result is reached. This is the desirable condition.
-
The solution diverges, which means that from iteration to iteration, the difference between the current and the previous result increases.
-
The solution switches between two values. For example, after the first iteration the result is 1, after the next iteration the result is 10, after the next iteration the result is 1, and so on.
Do you have a specific function question?
Help us improve Excel
Do you have suggestions about how we can improve the next version of Excel? If so, please check out the topics at Excel User Voice