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())