Errors when nesting IF() formulas

I'm just putting together a simple spreadsheet that calculates tax owed based on a few different bands. I have an 'Invoiced Amount' cell that takes up the yearly invoicing and then applies a tax rate to it based on the following conditions:

If 'Invoiced Amount' is below 10, 600 then Tax Owed = 0

If 'Invoiced Amount' is above 10, 600 but less than 42, 386 then Tax Owed = ((Invoiced Amount - Tax Allowance)/100) * 20

If 'Invoiced Amount' is Equal to or greater than 42, 386 than Tax Owed = ((42, 386 - Tax Allowance)*20)+((InvoicedAmount - 42, 386)*40)

I could be overlooking something really basic here, but just to be sure - Tax Allowance is 10, 600 - Anything over this up to 42, 386 is worked out at 20% tax, and then anything earn above 42, 386 is charged @ 40% on top...

The more I type this out the more confused I am. Anyway, Here is my excel formula:

InvoicedTotal = P5 TaxAllowance (10600) ='UK Tax Figures'!C3 TaxAllowanceUpperBand (42386) ='UK Tax Figures'!G5 TaxAllowance Upper Band - Tax Allowance (31784) = H5 UpperTaxAllownace Band (42386.01) = ='UK Tax Figures'!F5 =IF ((P5)<’UK Tax Figures’!C3, 0, IF(P5>=’UK Tax Figures’!C3<'UK Tax Figures'!G5, ((P5-'UK Tax Figures'!C3)/100)*20, IF(P5>='UK Tax Figures'!F5, ((H5/100)*20)+((P5-'UK Tax Figures'!F5)*40))

At the moment I'm getting crazy unexpected values back, so the calculation is obviously VERY wrong... But I can't see the wood for the trees at the moment, so if anyone has any thoughts I would really appreciate it! Going a little crazy here at the moment!

-------------Problems Reply------------

Putting your formula into the Online Excel Formula beautifier I notice several problems with your formula:

=IF ( ( P5 ) < ’UK Tax Figures’!C3 , 0 ,
P5 >= ’UK Tax Figures’!C3 < UKTaxFigures!G5,
( ( P5 - UKTaxFigures!C3 ) / 100 ) * 20,
P5 >= UKTaxFigures!F5,
( ( H5 / 100 ) * 20 ) + ( ( P5 - UKTaxFigures!F5 ) * 40 )

  • First of all, you lack two closing parantheses
  • Furthermore, you have an invalid conditional in P5>=’UK Tax Figures’!C3<'UK Tax Figures'!G5, you need to change this to AND(P5>=UKTaxFigures!C3;UKTaxFigures!C3<UKTaxFigures!G5).
  • Taking a look at how you reference your worksheets above, I notice that it seems you have two different sheets - one with spaces between the words in the sheet names, and one without. I suspect this is not the case, so you should probably remove those spaces from the formula.
  • You are also inconsistent with whether or not you use apostrophes () around your sheet-names. Trying out your formula in a cell, Excel didn't seem to like them, so they should probably go as well.
  • there seems to be a return-value missing from your innermost if-statement if it is false.

Guessing a bit at what you want the formula to return, I end up with this formula:


Which looks like this in the beautifier:

P5 < UKTaxFigures!C3;
P5 >= UKTaxFigures!C3;
UKTaxFigures!C3 < UKTaxFigures!G5
( ( P5 - UKTaxFigures!C3 ) / 100 ) * 20;
P5 >= UKTaxFigures!F5;
( ( H5 / 100 ) * 20 ) + ( ( P5 - UKTaxFigures!F5 ) * 40 );

Is that something close to what you want?

As a final word of advice it is an absolute pain to write a formula like that - instead you can try to build it bit by bit, storing each part of the formula in one cell to see if each of them works. Then you can cut and paste so that they all fit in one cell. I.e. if you in cell A1 store:


Then you can put


in A2 and this


in A3. If necessary you can pick the formulas even further apart to make them more readable. Then in the end you just copy the formulas from the cells, and replace the references with them.

Please note that I am not 100 % certain that I got everything correct, without proper data it is somewhat difficult to keep track of all the parantheses and results. But this should at least give you a good starting point.

Category:excel Views:5 Time:2018-10-11

Related post

Copyright (C), All Rights Reserved.

processed in 0.158 (s). 11 q(s)