I am trying to find a way to efficiently replace zero with NA()
in an Excel formula. I know the following works:
=IF(FORMULA = 0, NA(), FORMU
Calculation and display can occur in two different locations - why merge operations when you don't need to?
A1 - =Formula
B1 - =If(A1 = 0, NA(),A1)
The general answer is
=IFERROR(f'(f(FORMULA)), AlternateValue)
where f(FORMUALA)
returns an error (any error will do) for values of FORMULA
that you want an alternate value for.
And f'(...)
is the inverse of f(...)
, so f'(f(FORMULA))
returns FORMULA
for other values.
Ensure the first function is applied to the whole of FORMULA
. Enclosing it in ()
guarantees that.
Secondly, ensure the two functions are applied in the correct order, also achieved using ()
.
In this case you want an alternate value for 0
so you can use
=IFERROR(1/(1/(FORMULA)), NA())