ISNA Function in Excel

Sumit Bansal
Written by

Sumit Bansal is the founder of TrumpExcel.com and a 13-time Microsoft Excel MVP. He started this site in 2013 to share his passion for Excel through easy tutorials, tips, and training videos, helping you master Excel, boost productivity, and maybe even enjoy spreadsheets!

The ISNA function checks whether a value is the #N/A error. It returns TRUE when it is, and FALSE for anything else.

You’ll see #N/A most often when a lookup can’t find what it’s looking for. ISNA lets you spot those misses so you can flag them, count them, filter them out, or highlight them.

In this article, I’ll show you how ISNA works and where it’s still the right tool. I’ll also point out the cases where the IFNA function or XLOOKUP does the job in one step.

Follow along with the example file

ISNA Function Examples.xlsx

Download

ISNA Function Syntax

Here is the syntax of the ISNA function:

=ISNA(value)
  • value (required): The value you want to check. This is usually a cell reference or another formula, such as a lookup.

ISNA only returns TRUE for the #N/A error. Other errors, like #DIV/0! or #VALUE!, return FALSE, and so do numbers, text, and empty cells.

Text that looks like the error doesn’t count either. So =ISNA("#N/A") returns FALSE, because the quotes make it plain text, while =ISNA(NA()) returns TRUE.

The ISNA function works in all Excel versions, including 365, 2024, 2021, 2019, 2016, Mac, and the web.

When to Use the ISNA Function

Use this function when you need to:

  • Find which cells in a column hold the #N/A error.
  • Check whether each item in one list appears in another list.
  • Count how many items from one list are missing from another.
  • Pull out only the rows where a value came back as #N/A.
  • Highlight the rows that have #N/A so they stand out.

Let me show you a few practical examples of how to use ISNA.

Example 1: Check Which Cells Have the #N/A Error

Let’s start with a simple example.

Below is a list of delivery drivers and the packages each one delivered this week, and I want to check which counts are the #N/A error in column C.

Delivery drivers with packages delivered, three #N/A counts, a typed N/A, and an empty Is It #N/A? column

Here is the formula:

=ISNA(B2:B11)
ISNA formula spilling TRUE for the three #N/A counts and FALSE for the typed N/A text

The ISNA function checks every cell in B2:B11 and returns TRUE for Megan, Eric, and Hannah, whose counts are #N/A. Since I gave it a whole range, the results spill into C2:C11 on their own.

Now look at Rachel. Her cell shows N/A, but someone typed it in as text, so ISNA returns FALSE for it.

That’s worth knowing when you clean data. A typed “N/A” isn’t an error, so ISNA won’t find it, and you’d need to search for that text separately.

If you are using Excel 2019 or earlier, enter the below formula in cell C2 and then copy it down the range:

=ISNA(B2)

Example 2: Flag Names Missing From Another List

Here’s another practical scenario, and it’s probably the most common way people use ISNA.

Below is a list of people who signed up for a pottery class, plus a list of those who have paid, and I want to flag who still hasn’t paid in column B.

Pottery class sign-ups, a list of people who paid, and empty Payment Missing? and Status columns

Here is the formula:

=ISNA(XMATCH(A2:A11,E2:E7))
ISNA and XMATCH formula returning TRUE for the four people missing from the Paid list

This returns TRUE for Mark, Nicole, Ashley, and Daniel, since their names aren’t in the Paid list.

Here is how this formula works:

  • XMATCH(A2:A11,E2:E7) looks for each name from column A in the Paid list. When it finds a name, it returns that name’s position in E2:E7.
  • When a name isn’t in the Paid list, XMATCH returns #N/A.
  • ISNA(...) turns each result into TRUE (the #N/A, so not paid) or FALSE (a position, so paid).

TRUE and FALSE work, but a label is easier to read. To show “Unpaid” or “Paid” in column C, wrap the same check in the IF function.

Here is the formula:

=IF(ISNA(XMATCH(A2:A11,E2:E7)),"Unpaid","Paid")
IF, ISNA and XMATCH formula labeling each person Paid or Unpaid

When ISNA returns TRUE, IF shows “Unpaid”, and when it returns FALSE, you get “Paid”.

This is where ISNA beats IFNA. IFNA swaps the #N/A for a value but keeps the match position for everyone else, while IF with ISNA lets you choose a label for both outcomes.

Both formulas need Excel 365 or Excel 2021 and later, because they use the XMATCH function and spill their results.

If you are using Excel 2019 or earlier, enter the below formula in cell B2 and then copy it down the range:

=ISNA(MATCH(A2,$E$2:$E$7,0))

And for the Paid or Unpaid labels, enter this formula in cell C2 and copy it down:

=IF(ISNA(MATCH(A2,$E$2:$E$7,0)),"Unpaid","Paid")

In both formulas, the 0 at the end of MATCH tells it to accept only an exact match.

Example 3: IF ISNA VLOOKUP (and a Better Way)

If you open older workbooks, you’ll often find ISNA wrapped around VLOOKUP to replace the #N/A with a message. Let me show you that formula first, and then the simpler way to do it now.

Below is a list of bakery orders with the ZIP code each one ships to, plus a table of ZIP codes and their delivery zones, and I want the zone for each order (or “Out of area”) in column C.

Bakery orders with ZIP codes, a ZIP code to delivery zone table, and two empty zone columns

Here is the formula I entered in C2 and copied down to C11:

=IF(ISNA(VLOOKUP(B2,$F$2:$G$8,2,FALSE)),"Out of area",VLOOKUP(B2,$F$2:$G$8,2,FALSE))
Older IF, ISNA and VLOOKUP formula returning the zone or Out of area

This gives Zone A for order 1041 and “Out of area” for 1043, 1046, and 1049, whose ZIP codes aren’t in the zone table.

Here is how this formula works:

  • VLOOKUP(B2,$F$2:$G$8,2,FALSE) looks for the ZIP code in the zone table and returns the zone. It returns #N/A when the ZIP code isn’t there.
  • ISNA(...) checks whether that lookup gave #N/A.
  • When it did, the IF function shows “Out of area”. When it didn’t, IF runs the same VLOOKUP again to show the zone.

It works, but you have to write the whole lookup twice. Change the table range in one place and forget the other, and you get a wrong answer.

If you have Excel 365 or Excel 2021 and later, the XLOOKUP function has a built-in argument for the “not found” result.

Here is the formula I entered in D2:

=XLOOKUP(B2:B11,F2:F8,G2:G8,"Out of area")
XLOOKUP formula with Out of area as its fourth argument, matching the older formula's results

Column D gives exactly the same zones as column C. The fourth argument, “Out of area”, is what XLOOKUP returns when it can’t find a ZIP code, so there’s no ISNA and no second lookup.

If you are using Excel 2013, 2016, or 2019, enter the below formula in cell D2 and then copy it down the range. With this one, you only write the lookup once:

=IFNA(VLOOKUP(B2,$F$2:$G$8,2,FALSE),"Out of area")

Pro Tip: When all you want is a message instead of #N/A, use XLOOKUP’s fourth argument or the IFNA function. Save ISNA for jobs that need TRUE or FALSE, like the other examples in this article.

Example 4: Count Missing Matches in One Formula

Sometimes you don’t need a flag for every row. You just want to know how many are missing.

Below is a list of employees who must finish a safety training, plus the list of people who have completed it, and I want the number of employees who still need to complete it in cell E2.

Employees required to take safety training, the completed list, and an empty Still To Complete cell

Here is the formula:

=SUM(--ISNA(XMATCH(A2:A13,C2:C10)))
SUM, ISNA and XMATCH formula returning 5 employees who still need the training

This returns 5. Samantha, Patrick, Victor, Dana, and Corey are on the required list but not on the completed list.

Here is how this formula works:

  • ISNA(XMATCH(A2:A13,C2:C10)) gives one TRUE or FALSE for each employee, just like in Example 2. TRUE means the name isn’t on the completed list.
  • The double minus (--) turns TRUE into 1 and FALSE into 0.
  • The SUM function adds up those 1s, which gives the number of missing names.

You might think 12 employees minus 9 completions would give you the answer. It doesn’t here, because Jordan and Kelly finished the training but aren’t on the required list, so subtracting would give 3 instead of 5.

If you are using Excel 2019 or earlier, enter the below formula in cell E2:

=SUMPRODUCT(--ISNA(MATCH(A2:A13,C2:C10,0)))

Example 5: List Only the Rows With #N/A Using FILTER

If you have Excel 365 or Excel 2021 and later, you can combine ISNA with the FILTER function to pull out matching rows instead of just flagging them.

Below is a list of job applicants with the role they applied for and their interview date, where #N/A means no interview is scheduled yet, and I want a list of the applicants still waiting in columns E and F.

Job applicants with role and interview date, #N/A for unscheduled interviews, and an empty results area

Here is the formula:

=FILTER(A2:B11,ISNA(C2:C11))
FILTER and ISNA formula listing the four applicants with no interview date

This returns Kayla, Alyssa, Trevor, and Erin with their roles. These are the four applicants whose interview date is #N/A.

ISNA checks each interview date and returns TRUE for the #N/A ones. FILTER then keeps only the rows of A2:B11 where that check is TRUE.

As soon as you schedule an interview and the #N/A in column C changes to a date, that applicant drops off the list.

If every applicant has a date, FILTER returns the #CALC! error, because there’s nothing left to show. FILTER’s third argument sets what to show instead, such as “All scheduled”.

Example 6: Highlight #N/A Rows With Conditional Formatting

ISNA also works inside conditional formatting, so you can make the #N/A rows stand out in a list.

Below is a youth basketball team’s jersey order with each player’s number and size, where #N/A means the player hasn’t sent in a size, and I want to highlight the whole row for those players.

Youth basketball jersey order with player, jersey number and size, three sizes showing #N/A

Here is the formula we’ll use in the conditional formatting rule:

=ISNA($C2)

Here are the steps:

  1. Select the cells A2:C11.
  1. Click the Home tab.
  1. In the Styles group, click on Conditional Formatting.
  1. Click on New Rule.
New Rule option in the Conditional Formatting menu on the Home tab
  1. In the New Formatting Rule dialog box, select “Use a formula to determine which cells to format”.
  1. In the “Format values where this formula is true” field, enter the formula =ISNA($C2).
  1. Click the Format button.
  1. In the Fill tab, select a light red color.
  1. Click OK to close the Format Cells dialog box.
New Formatting Rule dialog box with the ISNA formula and a light red fill in the preview
  1. Click OK to apply the rule.
Jersey order rows for Caleb, Wyatt and Dylan highlighted in light red because their size is #N/A

The rows for Caleb, Wyatt, and Dylan are now highlighted, since their size shows #N/A.

The dollar sign in $C2 locks the column, so every cell in the row checks the size in column C. The row number has no dollar sign, so each row checks its own size.

Excel’s built-in “Format only cells that contain” rule can highlight errors too, but it only colors the error cell itself, and it catches every type of error. The ISNA rule colors the whole row and reacts only to #N/A.

So these are some practical ways to use the ISNA function in Excel. You can use it to find #N/A errors, flag and count items missing from another list, filter rows, and highlight them.

I hope you found this Excel tutorial useful.

List of All Excel Functions

Other Excel Articles You May Also Like:

Sumit Bansal

Sumit Bansal

13x Microsoft Excel MVP

Hey! I'm Sumit Bansal, founder of trumpexcel.com and a Microsoft Excel MVP. I started this site in 2013 because I genuinely love Microsoft Excel (yes, really!) and wanted to share that passion through easy Excel tutorials, tips, and Excel training videos. My goal is straightforward: help you master Excel skills so you can work smarter, boost productivity, and maybe even enjoy spreadsheets along the way!

Get the FREE 51 Excel Tips Ebook

Enter your details and the free PDF is on its way to your inbox.

Hmm, that didn't go through. Please check your email and try again.

No spam. You'll also get my weekly Excel newsletter. Unsubscribe anytime.

Check your inbox!

The ebook is on its way to your email. It usually lands within a couple of minutes.