This article shows how to find errors in a list by using **ISERROR** and **MATCH** functions in an array formula.

# Syntax

{ =MATCH(TRUE, ISERROR(search array), 0) }

# Steps

- Start with
**=MATCH(**function - Type
**TRUE,**variable to search for the matched values - Continue with
**ISERROR(**function - Select the reference that contains the range to be searched
**C3:C11** - Type
**)**to close the ISERROR function - Add
**0**to ensure*exact match* - Type
**)**to close the MATCH function and complete the formula **Click**to make it an array formula*Ctrl + Shift + Enter*instead of*Enter*

# How

By default, you can’t type an error in a formula and use it as an argument. Although *#N/A* error can be produced by **NA** function, it can’t be used either. Because if there is an error in function, the function returns an error as well. There are few functions that can behave contrary to this assumption though. Functions like **ISERROR** or **IFERROR** accept errors as an argument. Also, some functions like **COUNT** or **SUM** ignore “only” *#N/A* errors.

We can use the **ISERROR** function to create an array and the **MATCH** function to locate the errors in the generated array. There are 2 tricks to apply here:

- Make the
**ISERROR**function to return an array which is handled automatically when we define it as an*array formula*. - Search
*TRUE*values, instead of search value itself, in the array that is returned by the**ISERROR**function

Let’s analyze the formula.

ISERROR(C3:C11) formula returns *{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE}* array for the list where the 5^{th} value is an error. By defining the formula as an array we ensured the evaluation of the **ISERROR** function for each cell in **C3:C11** range.

It is now straightforward to find the exact match using the MATCH function among *TRUE/FALSE* values.

=MATCH(TRUE,ISERROR(C3:C11),0)