Rewriting a formula of multiple nested IFs that is too deep

I think the formula is equivalent to:

=IF(OR(N7>=100000000,N7<500000),0,100-INT(N7/1000000))

Now that Kevin has reformatted the formula, I can see quite clearly that the formula is correct in all cases.

Thanks to the questioner's comment, I can state that the equivalent German formula is:

=WENN(ODER(N7>=100000000;N7<500000);0;100-GANZZAHL(N7/1000000))

Put all your threshold values into a range on a worksheet and use a lookup formula with an approximate match.

Sort your data ascending by value of the lookup column. The lookup column must be the first column of the lookup table if you want to use VLookup. If you are happy to use an Index/Match combo, the lookup column can be anywhere in the table.

The screenshot below has a sample lookup table in cells A1 to B6. The table is sorted ascending by the values in column A. This is important. If the table is not sorted ascending, then following formula will not work.

The value in cell E2 is not an exact match for any of the values in column A. The Vlookup formula will find the next smallest value (i.e. 50) and will return the result from column 2 of the lookup table for this approximate match. Note that for an approximate match the fourth parameter of VLookup must be "TRUE" or 1.

Here is the formula:

=VLOOKUP(E2,$A$1:$B$6,2,TRUE)

And the screenshot:

enter image description here

The German name for Vlookup is SVerweis (I think), and you need to replace commas with semicolons in German Excel. I don't know what "TRUE" is in German Excel, but you can use a 1 for TRUE and a 0 for FALSE.

=SVerweis(E2;$A$1:$B$6;2;1)

Hoffentlich klappt's!!