ISNA

Check whether a value is the #N/A error and return TRUE or FALSE.

|
Excel All versions
|
Google Sheets Supported

Spreadsheet editor

Syntax

=ISNA(value) Returns: Boolean

Arguments

Argument Required Description
value Yes The value or cell reference you want to test for the #N/A error.

About

ISNA checks a single value and returns TRUE if it is the #N/A error, or FALSE for anything else. Unlike ISERROR, which flags every error type, ISNA reacts only to #N/A. That makes it the go-to test for lookups, since #N/A is the error VLOOKUP, HLOOKUP, and MATCH return when they cannot find a match.

Most of the time you pair ISNA with IF to swap a missing match for a friendly message or a default value. For example, =IF(ISNA(VLOOKUP(...)), "Not found", VLOOKUP(...)) keeps your report clean instead of showing raw #N/A errors. ISNA accepts any value: a cell reference, a formula result, text, a number, or a blank cell.

If your goal is simply to replace a #N/A result, the modern IFNA function does it in one step and is easier to read. Use ISNA when you need the TRUE/FALSE test itself, for instance inside a larger logical check or when counting how many lookups failed.

Examples

ISNA only catches #N/A

Notice that ISNA returns TRUE only for the #N/A error, while the #DIV/0! error still returns FALSE. Edit the cell values to see which errors slip through.

Spreadsheet editor

Show a friendly message instead of #N/A

Wrap the lookup in IF and ISNA so a missing match shows "Not found" instead of a raw error. Change "Jake" to a name in the table and watch the department appear.

Spreadsheet editor

Count how many lookups failed

Run ISNA down a column of lookups, then total the TRUE values with SUMPRODUCT to count the #N/A results. Fix an order code to match the table and watch the failure count drop.

Spreadsheet editor

Watch out for

Using ISNA when you meant any error

ISNA only catches the #N/A error. If a cell holds #DIV/0!, #VALUE!, or #REF!, ISNA returns FALSE and the error slips through your check.

Use ISERROR to catch every error type, or ISERR for all errors except #N/A. Keep ISNA for lookups where #N/A is the only error you expect.

Writing the lookup twice

The =IF(ISNA(VLOOKUP(...)), "...", VLOOKUP(...)) pattern repeats the same lookup, which is slower and easy to mistype when ranges change.

If you just want to replace #N/A, use IFNA instead. =IFNA(VLOOKUP(...), "Not found") writes the lookup once and reads more clearly.

Expecting ISNA to fix the error

ISNA only reports TRUE or FALSE. On its own it does not replace the #N/A or change the cell, so the error still shows where the lookup runs.

Combine ISNA with IF to decide what to display, or switch to IFNA or IFERROR to substitute a value directly.

Tips & notes

ISNA is one of Excel's IS functions, alongside ISERROR, ISBLANK, ISNUMBER, ISTEXT and a few others (search for 'is' to see them all). They all return TRUE or FALSE and are most useful inside IF statements or conditional formatting rules where you need a quick test before deciding what to do next.

Common questions

What is the difference between ISNA and ISERROR?

ISNA returns TRUE only for the #N/A error. ISERROR returns TRUE for any error, including #DIV/0!, #VALUE!, and #REF!. Use ISNA when a missing lookup is the only error you want to catch.

Should I use ISNA or IFNA?

Use IFNA when you simply want to replace a #N/A result with another value, since it does the job in one step. Use ISNA when you need the actual TRUE/FALSE test, for example inside a bigger logical formula or to count failed lookups.

Why does my VLOOKUP return #N/A?

#N/A means VLOOKUP could not find the lookup value. Common causes are extra spaces, text stored as numbers, or a value that truly is not in the table. ISNA helps you flag these rows so you can fix them.

Is ISNA available in Google Sheets?

Yes. ISNA works the same way in Google Sheets, using ISNA(value) to test for the #N/A error.