You are on page 1of 5

Excel IFERROR function with formula examples

ablebits.com /office-addins-blog/2017/09/27/excel-iferror-function-with-formula-examples/

Excel IFERROR function - syntax and basic uses


The IFERROR function in Excel is designed to trap and manage errors in formulas and calculations. More
specifically, IFERROR checks a formula, and if it evaluates to an error, returns another value you specify;
otherwise, returns the result of the formula.

The syntax of the Excel IFERROR function is as follows:

IFERROR(value, value_if_error)

Where:

Value (required) - what to check for errors. It can be a formula, expression, value, or cell reference.
Value_if_error (required) - what to return if an error is found. It can be an empty string (blank cell), text
message, numeric value, another formula or calculation.

For example, when dividing two columns of numbers, you may get a bunch of different errors if one of the
columns contains empty cells, zeros or text.

To prevent that from happening, use the IFERROR function to catch and handle
errors the way you want.

If error, then blank

Supply an empty string (") to the value_if_error argument to return a blank cell if
an error is found:

=IFERROR(A2/B2,
"")

If error, then show a message

You can also display your own message instead of Excel's standard error
notation:

=IFERROR(A2/B2, "Error in
calculation")

5 things you should know about Excel IFERROR function

1. The IFERROR function in Excel handles all error types including #DIV/0!,
#N/A, #NAME?, #NULL!, #NUM!, #REF!, and #VALUE!.
2. Depending on the contents of the value_if_error argument, IFERROR can
replace errors with your custom text message, number, date or logical value,
the result of another formula, or an empty string (blank cell).
3. If the value argument is a blank cell, it is treated as an empty string (''') but not an error.
4. IFERROR was introduced in Excel 2007 and is available in all subsequent versions of Excel 2010, Excel
2013, and Excel 2016.
5. To trap errors in Excel 2003 and earlier versions, use the ISERROR function in combination with IF, as
1/5
shown in this example.

IFERROR formula examples


The following examples show how to use IFERROR in Excel in combination with other functions to accomplish
more complex tasks.

Excel IFERROR with Vlookup

One of the most common uses of the IFERROR function is telling the users that the value they are searching for
does not exist in the data set. For this, you wrap a VLOOKUP formula in IFERROR like this:

IFERROR(VLOOKUP(),"Not found")

If the lookup value is not in the table you are looking in, a regular Vlookup formula would return the #N/A error:

For your users' piece of mind, wrap VLOOKUP in IFERROR and display a more informative and user-friendly
message:

=IFERROR(VLOOKUP(A2, 'Lookup table'!$A$2:$B$4, 2,FALSE), "Not


found")

The screenshot below shows this Iferror formula in Excel:

In a similar manner, you can use INDEX MATCH together with IFERROR:

=IFERROR(INDEX('Lookup table'!$B$2:$B$4,MATCH(A2,'Lookup table'!$A$2:$A$4,0)),


"Not found")

If you'd like to trap only #N/A errors but not all errors, use the IFNA function instead of IFERROR.

For more Excel IFERROR VLOOKUP formula examples, please check out these tutorials:

How to get Nth occurrence of lookup value


How to get all occurrences of lookup value

Nested IFERROR functions to do sequential Vlookups

In situations when you need to perform sequential Vlookups based on whether a previous Vlookup succeed or
failed, you can nest two or more IFERROR functions to evaluate multiple conditions one by one:

IFERROR(VLOOKUP(), IFERROR(VLOOKUP(), IFERROR(VLOOKUP(),"Not found")))

The formula works with the following logic:

If the first Vlookup does not find anything, the first IFERROR traps an error and runs another Vlookup. If the
second Vlookup fails, the second IFERROR catches an error and runs the third Vlookup, and so on. If all
Vlookups fail, the last IFERROR returns your message.

2/5
This nested IFERROR formula is especially useful when you have to search through multiple sheets as shown
in the below example.

Supposing you have a number of sales reports from regional branches of your company, and you want to get an
amount for a certain order ID. With A2 as the lookup value in the current sheet, and A2:B5 as the lookup range
in 3 lookup sheets (Report 1, Report 2 and Report 3), the formula goes as follows:

=IFERROR(VLOOKUP(A2,'Report 1'!A2:B5,2,0),IFERROR(VLOOKUP(A2,'Report
2'!A2:B5,2,0),IFERROR(VLOOKUP(A2,'Report 3'!A2:B5,2,0),"not found")))

The result will look something similar to this:

IFERROR in array formulas

As you probably know, array formulas in Excel are meant to perform multiple calculations within a single formula.
If you supply an array formula or expression that results in an array in the value argument of the IFERROR
function, it'd return an array of values for each cell in the specified range. The below example shows the details.

Let's say, you have Total in column B and Price in column C, and you want to calculate Total Quantity. This can
be done by using the following array formula, which divides each cell in the range B2:B4 by the corresponding
cell of the range C2:C4, and then adds up the results:

=SUM($B$2:$B$4/$C$2:$C$4)

The formula works fine as long as the divisor range does not have zeros or empty cells. If there is at least one 0
value or blank cell, the #DIV/0! error is returned:

To fix that error, simply do the division within the IFERROR function:

=SUM(IFERROR($B$2:$B$4/$C$2:$C$4,0))

What the formula does is to divide a value in column B by a value in column C in each row (100/2, 200/5 and
0/0) and return the array of results {50; 40; #DIV/0!}. The IFERROR function catches all #DIV/0! errors and
replaces them with zeros. And then, the SUM function adds up the values in the resulting array {50; 40; 0} and
outputs the final result (50+40=90).

Note. Please remember that array formulas should be completed by pressing the
Ctrl + Shift + Enter shortcut.

IFERROR vs. IF ISERROR


Now that you know how easy it is to use the IFERROR function in Excel, you may wonder why some people still
lean towards using the IF ISERROR combination. Does it have any advantages compared to IFERROR? None.
In the bad old days of Excel 2003 and lower when IFERROR did not exist, IF ISERROR was the only possible
way to trap errors. In Excel 2007 and later, it's just a bit more complex way to achieve the same result.

3/5
For instance, to catch Vlookup errors, you can use either of the below formulas.

In Excel 2007 - Excel 2016:

IFERROR(VLOOKUP(), "Not found")

In all Excel versions:

IF(ISERROR(VLOOKUP()), "Not found", VLOOKUP())

Notice that in the IF ISERROR VLOOKUP formula, you have to Vlookup twice. In plain English, the formula can
be read as follows: If Vlookup results in error, return "Not found", otherwise output the Vlookup result.

And here is a real-life example of an Excel If Iserror Vlookup formula:

=IF(ISERROR(VLOOKUP(D2, A2:B5,2,FALSE)),"Not found", VLOOKUP(D2, A2:B5,2,FALSE


))

IFERROR vs. IFNA


Introduced with Excel 2013, IFNA is one more function to check a formula for errors. Its syntax is similar to that
of IFERROR:

IFNA(value, value_if_na)

In what way is IFNA different from IFERROR? The IFNA function catches only #N/A errors while IFERROR
handles all error types.

In which situations you may want to use IFNA? When it is unwise to disguise all errors. For example, when
working with important or sensitive data, you may want to be alerted about possible faults in your data set, and
standard Excel error messages with the "#" symbol could be vivid visual indicators.

Let's see how you can make a formula that displays the "Not found" message instead of the N/A error, which
appears when the lookup value is not present in the data set, but brings other Excel errors to your attention.

Supposing you want to pull Qty. from the lookup table to the summary table as shown in the screenshot below.
Using the Excel Iferror Vlookup formula would produce an aesthetically pleasing result, which is technically
incorrect because Lemons do exist in the lookup table:

To catch #N/A but display the #DIV/0 error, use the IFNA function in Excel 2013 and Excel 2016:

=IFNA(VLOOKUP(F3,$A$3:$D$6,4,FALSE), "Not found")

Or, the IF ISNA combination in Excel 2010 and earlier versions:

=IF(ISNA(VLOOKUP(F3,$A$3:$D$6,4,FALSE)),"Not found",
VLOOKUP(F3,$A$3:$D$6,4,FALSE))

The syntax of the IFNA VLOOKUP and IF ISNA VLOOKUP formulas are similar to that of IFERROR VLOOKUP
and IF ISERROR VLOOKUP discussed earlier.
4/5
As shown in the screenshot below, the Ifna Vlookup formula returns "Not found" only for the item that is not
present in the lookup table (Peaches). For Lemons, it shows #DIV/0! indicating that our lookup table contains a
divide by zero error:

Best practices for using IFERROR in Excel


By now you already know that the IFERROR function is the easiest way to catch errors in Excel and mask them
with blank cells, zero values, or custom messages of your own. However, that does not mean you should wrap
each and every formula with error handling. The following simple recommendations may help you keep the
balance.

1. Don't trap errors without a reason.


2. Wrap the smallest possible part of a formula in IFERROR.
3. To handle only specific errors, use an error handling function with a smaller scope:

IFNA or IF ISNA to catch only #N/A errors.


ISERR to catch all errors except for #N/A.

This is how you use the IFERROR function in Excel to trap and handle errors. To have a closer look at the
formulas discussed in this tutorial, you are welcome to download our sample IFERROR Excel workbook. I thank
you for reading and hope to see you on our blog next week.

You may also be interested in:

Using IF function in Excel - tutorial for beginners


Advanced Excel IF formula examples

5/5

You might also like