Syntax, a live lookup playground, the measured error-catch matrix (IFNA catches only #N/A — IFERROR catches everything), the 0-vs-blank fallback trap, and a sourced error library: hide missing matches without burying real bugs.
IFNA inspects a formula's result: if it is the #N/A error, IFNA returns your fallback; otherwise it returns the result unchanged. It is the narrow sibling of IFERROR — built for the one error a lookup legitimately produces when a key is missing.
IFNA is the surgical guard: it replaces only #N/A and lets every other error through. The matrix below was measured live in the HyperFormula engine — 6 of 7 error types reproduced directly, #NULL! documented from Microsoft's spec. Click any cell to load that exact error × guard straight into the live playground below.
| Error | IFNA | IFERROR | ISNA | ISERROR | ISERR |
|---|---|---|---|---|---|
| #N/A | catches | catches | TRUE | TRUE | FALSE |
| #DIV/0! | #DIV/0! | catches | FALSE | TRUE | TRUE |
| #VALUE! | #VALUE! | catches | FALSE | TRUE | TRUE |
| #REF! | #REF! | catches | FALSE | TRUE | TRUE |
| #NAME? | #NAME? | catches | FALSE | TRUE | TRUE |
| #NUM! | #NUM! | catches | FALSE | TRUE | TRUE |
| #NULL! doc | #NULL! | catches | FALSE | TRUE | TRUE |
Measured: IFNA catches 1 of 7 error types (only #N/A); IFERROR catches all 7. Wrap a lookup in IFNA and a real #REF! or #VALUE! still surfaces — so genuine bugs are not buried.
=IFNA(VLOOKUP(…,9,0),"safe")#REF!=IFERROR(VLOOKUP(…,9,0),"safe")"safe"Same broken column index. IFNA leaves the #REF! visible; IFERROR hides it. Use IFNA when only a missing match is expected.
| test on #N/A | result |
|---|---|
ISNA(#N/A) | TRUE |
ISERROR(#N/A) | TRUE |
ISERR(#N/A) | FALSE |
Measured: ISERR is TRUE for every error except #N/A. Use it to flag "real" errors while ignoring expected missing matches — the complement of ISNA.
| fallback | AVERAGE | COUNTA |
|---|---|---|
0 | counts (drags down) | counts |
"" | skipped | counts |
"Not found" | skipped | counts |
A 0 fallback plots on charts and pulls an AVERAGE down; "" is skipped by AVERAGE but still counts as non-empty for COUNTA. Choose deliberately — "" is not a truly blank cell.
Edit the product table or type any formula — the HyperFormula engine evaluates it instantly. Load a preset to see IFNA catch #N/A, miss #VALUE!/#REF!, IFERROR catch everything, and the 0-vs-blank fallback difference in action.
12 failure patterns mined from actual user reports on Reddit, Stack Overflow and Super User — each with the authentic symptom, root cause, a fix, and a runnable formula. Not textbook theory.
IFNA arrived in Excel 2013 (so perpetual 2016 already has it, unlike IFS). Older Excel returns #NAME? — here's where it lands across eight platforms and the IF(ISNA(...)) fallback.
| Platform | Support | Notes | Gotcha |
|---|
IFNA is the surgical guard. The full course walks the error toolkit end to end — IFNA vs IFERROR vs the IS* tests, choosing fallbacks that don't wreck your averages, and composing guards with lookups so real bugs stay visible.