Most Valuable Professional

View Jan Karel Pieterse's profile on LinkedIn subscribe to rss feed
Subscribe in a reader

Subscribe to our mailing list

* indicates required

Audit !!!

Check out our RefTreeAnalyser
the ultimate Excel formula auditing tool.


Excel VBA Masterclass (English)
Excel VBA for Financials (Dutch)

Third party tools

Speed up your file

The best tool to optimise your Excel model!

What has changed?

PerfectXL Compare, for Spreadsheet Comparison
This Excel compare tool is fast, reliable, and easy to use. Compare two Excel files now and see for yourself!
Home > English site > Articles > Circular References
Deze pagina in het Nederlands

Working with Circular references in Excel


If you've come to this page, chances are you've experienced the "Circular reference warning" popping up when you opened an Excel file or entered a formula. Excel detects a circular reference when a chain of calculations visits the same cell more than once. Many users get (very) confused by this message and have no idea what it is about. I'll try to demystify that message here!

You may also find an excerpt of parts of the article on the Microsoft Office blog

The next couple of pages discuss:

Table Of Contents


All comments about this page:

Comment by: Lazyprioria (3-8-2012 00:25:17)

excellent post, very informative. I wonder why the other specialists of this sector do not notice this. You must continue your writing. I am confident, you have a great readers' base already!


Comment by: Lauri Anne (3-8-2012 03:48:58)

Can you use a circular reference in Sky Drive. I have a fairly large sheet that uses circular references to distribute orders to our produce co-op. I would like to be able to use this sheet on SkyDrive but it looks like that can't happen.


Comment by: Jan Karel Pieterse (7-8-2012 11:17:49)

@Lauri: I guess the answer must be no if you have tested it and it does not work. But did you try it with a small spreadsheet?


Comment by: Lauri Anne (7-8-2012 15:35:35)

I have tried it it seems the problem is SkyDrive doesn't support the circular reference nor does it support iterative calculations...


Comment by: Jan Karel Pieterse (8-8-2012 13:08:58)

Hi Lauri Anne,

OK, thanks for letting me know!


Comment by: Michael Man (16-10-2012 21:00:19)

I am attempting to create an inventory control spreadsheet. In it I have created a circular reference and do not know how to resolve it. I have started cell B2 to be my starting inventory with C2-G2 being Monday-Friday usage and H2 being final weekly counts. Is there a way after fridays usage is entered and is put into H2, that B2 gets the new value as well to start over again for next week?

Thank you for your time.
Michael J Mann


Comment by: Jan Karel Pieterse (17-10-2012 09:32:23)

Hi Michael,

Is there a reason why you would not simply start the next week on row 3?


Comment by: Michael Mann (17-10-2012 14:54:54)

We have several types of cotton and foam that we use, and I am trying to digitalize our inventory system. Is there a way to make it auto go to row 3? I am sorry for asking so many questions, I am just not used to Excel.


Comment by: Jan Karel Pieterse (17-10-2012 15:59:46)

Hi Michael,

If you have many (basic) questions like these I advise you to register at Many helpful people out there who can answer your questions.

Overhere it's just me :-)


Comment by: Gene (18-10-2013 23:50:36)


I have $10.00 in C5. I use C6 to receive additional dollars. Today I received $1.25 and placed it into C6. I want that $1.25 to go into C5 making it $11.25. And I want C6 to continue to have $1.25 in it, until tomorrow or the next day. Sometime in the future I will place $.95 into C6, replacing the $1.25. I would like C5 to now contain $12.20, and C6 to contain $.95, until I update it at some future date.

Any help will really be appreciated.

Best regards,



Comment by: Jan Karel Pieterse (19-10-2013 16:19:48)

Hi Gene,

This can be done using a deliberate circular reference and iteration set to 1, but it will cause problems if you somehow cause an extra calculation of Excel.

I would advise to enter each transaction on a new row and have a simple sum function totalling them.


Comment by: Brian (4-12-2013 16:14:37)

Hello JKP,

I am using circular references in an excel based stock trading platform. Generally they are set too lock in the last trade price from a stream when a buy or sell order is placed. I want to do some calculations in another cell using the locked in number from the circular reference. When I set the formulas the formula builder usually shows the correct result but the cell where the result goes displays 0 instead of the calculation result.

Any thoughts are appreciated.



Comment by: Jan Karel Pieterse (4-12-2013 16:17:13)

Hi Brian,

What happens if you hit F9, does it then update to the proper value?
Perhaps the number of iterations is incorrect?


Comment by: Brian (5-12-2013 02:28:05)

Hello Jan,

Hitting the F9 key does not seem to have any affect. The iterations are set to 1 as it is a large spreadsheet and once a value is locked in it needs to stay until the next day. The circular references are the result of if/then formulas.




Comment by: Jan Karel Pieterse (5-12-2013 07:49:10)

Hi Brian,

OK. In that case I'm afraid I cannot really help without having your workbook.


Comment by: richie (21-1-2014 04:14:09)

anyone help me,always shown #N/A



Comment by: Jan Karel Pieterse (21-1-2014 06:13:07)

Hi Richie,

What is wrong with a simple:


I suspect the structure of your worksheet is making it hard to find what you need for your calculation...


Comment by: richie (8-2-2014 07:44:13)

Jan Karel Pieterse

hope you don't mind, can you give me your email add!,then i'll send you my format...



Comment by: Chris (16-4-2014 07:15:59)

Hi Jan, I have i hope a basic question .
wish to input a value into a cell and multiply it by another cells value, but have the result show in the first cell.

b1 = a1*b1 . so that the formula is just =a1* the value that will be entered into bi at another time. i'd like not to have to enter the value in the formula bar but in the cell, if at all possible.

this is to create a daily calories calculator

regards chris


Comment by: Jan Karel Pieterse (16-4-2014 12:09:57)

Hi Chris,

Why not show the result in a different cell than the input cell? That is the better aproach because you'll be able to see both input value and result.


Comment by: Marnix (20-4-2014 10:52:52)

Hi JAn, hope you can help. I made a cricular reference in a cell, say cell A, that is accumulating a value from another cell, say cell B. However, the automatic sheet calculation makes that it updates cell A every time a change is made anywhere due to auto calculation. I only want to have cell A updated if I make a change to cell B. I do not want to set the sheet to Manual calculation. (PS: Iteration is set to 1). Thank sin advance, Marnix.


Comment by: Jan Karel Pieterse (28-4-2014 10:17:58)

Hi Marnix,

You can only do that if the value in the "watched" cell is changed from a fixed value (for instance empty) to something else:



Comment by: Marnix (28-4-2014 21:45:55)

Hello Jan, many thanks for your suggestion. Translated to my case this did the trick: =IF( B1<>"" , A1+B1 , A1).
Cell A1 now accumulates any update of cell B1 without calculating other cells.

Thanks again!

regards Marnix


Comment by: Luiz Carlos Guilarducci (10-7-2014 17:17:27)

Let me explain my troubles, I'm using circular reference in my model to calculate interest income (My model is yearly, and i use the average between my cash balance from the year before and the current year). When I change the start date, my interest incomes go to infinite, and i need a cells to break the circularity and after return with it.
As my interest income are going to infinite, i use automatically a formula to chose 0 if interest income go to inifnite, otherwise 1. It is working well, but my boss doesn´t like this solution because normally people use cells to choose the circular reference or not.
I wanna know, if really there is a problem with my solution. What do you think? Have you ever used this solution?

Regards Luiz !


Comment by: Jan Karel Pieterse (11-7-2014 16:59:05)

Hi Luiz Carlos,

Your solution sounds perfectly feasible to me!


Comment by: Steve (14-4-2015 12:58:13)

Hi Jan

I have what I thought was a simple sum but is proving difficult to solve.

I want to create a running total on one row over only 2 columns.

Eg. Column a1 is a number I input on a daily basis. Column b1 will be the sum of a1:b1

So on day one b1 is blank and I enter 2 in a1. B1 then becomes 2.

The next day I change a1 to 3. I then want b1 to become 5

On the third day I change a1 to 5. B1 should then become 10 and so on for each day.

As a slight confusion I only want to do this for 7 days and then I want to delete all the data but keep the formulas and start again.

This is proving to be much harder than anticipated.

Any suggestions?


Comment by: Jan Karel Pieterse (15-4-2015 20:07:37)

Hi Steve,

This should work:

In B1:


In C1:


Turn on iteration and set max iterations to 1.

But it is risky, as if Excel triggers calculation from another cell, the total is updated by whatever is in cell A1. So I would suggest to simply have 7 cells which you enter the numbers into and have a SUM beneath it. WHen the 7th cell is filled, simply clear A1:A7.


Comment by: Matthew (16-2-2020 08:45:00)

Hi Jan, thanks for this info!
I've got a budget to build a house that is constantly being updated and the total sum at the bottom adjusts accordingly. Some of the figures within the budget are a percentage of the total budget so I'd like that cell to equal the exact same value of the total budget and adjust as the budget changes. This causes a circular reference issue, but I want it to operate like this. Can I turn off the warning or something simple or can you please explain to me how to fix this?


Comment by: Jan Karel Pieterse (17-2-2020 09:36:00)

Hi Matthew,

Sure, simply turn on iteration on Excel's calculation settings. Keep an eye on the results as it calculates to make sure it doesn't run away (values becoming larger and larger or smaller and smaller).


Comment by: Matthew (17-2-2020 10:15:00)

That did the trick! Nice and simple when you know how! Thanks a lot Jan! :)


Comment by: Matthew Wood (20-2-2020 02:42:00)

Hi again Jan,
This trick worked but it seems to keep breaking and returning a #N/A the next day after fixing it. Enable Iterations is still checked under the formula options??
Thank you!


Comment by: Jan Karel Pieterse (20-2-2020 13:46:00)

Hi Matthew,

I'd suggest to make sure you can set a starting value for your circular reference as I explain on this page:


Have a question, comment or suggestion? Then please use this form.

If your question is not directly related to this web page, but rather a more general "How do I do this" Excel question, then I advise you to ask your question here:

Please enter your name (required):

Your e-mail address (optional, will only be used to inform you when your comment is published or to respond to your question directly):

Your request or comment (max 2000 characters):

To post VBA code in your comment, use [VB] tags, like this: [VB]Code goes here[/VB].

I give permission to process this data and display my name and my comment on this website accoring to our Privacy Policy.