Errores en los cálculos de Excel

Cómo usar IFERROR en Excel con ejemplos de fórmulas

El tutorial muestra cómo usar IFERROR en Excel para detectar errores y reemplazarlos con una celda en blanco, otro valor o un mensaje personalizado. Aprenderá a usar la función IFERROR con Vlookup e Index Match, y cómo se compara con IF ISERROR e IFNA.

«Dame un lugar para pararme y moveré la tierra», dijo una vez Arquímedes. «Dame una fórmula y haré que devuelva un error», diría un usuario de Excel. En este tutorial, no veremos cómo devolver errores en Excel, preferiremos aprender cómo prevenirlos para mantener sus hojas de trabajo limpias y sus fórmulas transparentes.

Función Excel IFERROR – sintaxis y usos básicos

La función IFERROR en Excel está diseñada para atrapar y administrar errores en fórmulas y cálculos. Más específicamente, IFERROR verifica una fórmula y, si se evalúa como un error, devuelve otro valor que especifique; de lo contrario, devuelve el resultado de la fórmula.

La sintaxis de la función SI.ERROR de Excel es la siguiente:

SI.ERROR(valor, valor_si_error)

Dónde:

  • Valor (requerido) – qué verificar para ver si hay errores. Puede ser una fórmula, expresión, valor o referencia de celda.
  • Valor_si_error (requerido) – qué devolver si se encuentra un error. Puede ser una cadena vacía (celda en blanco), mensaje de texto, valor numérico, otra fórmula o cálculo.

Por ejemplo, al dividir dos columnas de números, puede obtener un montón de errores diferentes si una de las columnas contiene celdas vacías, ceros o texto.
Errores en los cálculos de Excel

Para evitar que eso suceda, use la función IFERROR para detectar y manejar los errores de la manera que desee.

Si hay error, entonces en blanco

Proporcione una cadena vacía («) al argumento value_if_error para devolver una celda en blanco si se encuentra un error:

=IFERROR(A2/B2, "")

Si hay error, devuelva una celda en blanco.

Si hay un error, muestra un mensaje

También puede mostrar su propio mensaje en lugar de la notación de error estándar de Excel:

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

Si hay un error, muestra un mensaje personalizado.

5 cosas que debe saber sobre la función IFERROR de Excel

  1. La función IFERROR en Excel maneja todos los tipos de error, incluidos #DIV/0!, #N/A, #NAME?, #NULL!, #NUM!, #REF! y #VALUE!.
  2. Según el contenido del argumento value_if_error, IFERROR puede reemplazar los errores con su mensaje de texto personalizado, número, fecha o valor lógico, el resultado de otra fórmula o una cadena vacía (celda en blanco).
  3. Si el argumento de valor es una celda en blanco, se trata como una cadena vacía (»’) pero no como un error.
  4. IFERROR se introdujo en Excel 2007 y está disponible en todas las versiones posteriores de Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021 y Excel 365.
  5. Para atrapar errores en Excel 2003 y versiones anteriores, use la función ESERROR en combinación con IF, como se muestra en este ejemplo.

Ejemplos de fórmulas IFERROR

Los siguientes ejemplos muestran cómo usar IFERROR en Excel en combinación con otras funciones para realizar tareas más complejas.

Excel IFERROR con Vlookup

Uno de los usos más comunes de la función IFERROR es decirle a los usuarios que el valor que están buscando no existe en el conjunto de datos. Para esto, envuelve una fórmula BUSCARV en IFERROR como esta:

SI.ERROR(BUSCARV(…),»No encontrado»)

Si el valor de búsqueda no está en la tabla que está buscando, una fórmula Vlookup normal devolvería el error #N/A:
La fórmula Vlookup devuelve el error #N/A.

Para la tranquilidad de sus usuarios, envuelva VLOOKUP en IFERROR y muestre un mensaje más informativo y fácil de usar:

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

La siguiente captura de pantalla muestra esta fórmula Iferror en Excel:
Fórmula Iferror Vlookup en Excel

Si desea atrapar solo los errores #N/A pero no todos los errores, use la función IFNA en lugar de IFERROR.

Para obtener más ejemplos de la fórmula IFERROR VLOOKUP de Excel, consulte estos tutoriales:

Funciones IFERROR anidadas para hacer Vlookups secuenciales en Excel

En situaciones en las que necesite realizar varias búsquedas virtuales en función de si la búsqueda anterior tuvo éxito o no, puede anidar dos o más funciones SI.ERROR una en otra.

Supongamos que tiene una serie de informes de ventas de las sucursales regionales de su empresa y desea obtener una cantidad para una identificación de pedido determinada. Con A2 como valor de búsqueda en la hoja actual y A2:B5 como rango de búsqueda en 3 hojas de búsqueda (Informe 1, Informe 2 e Informe 3), la fórmula es la siguiente:

=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")))

El resultado será algo similar a esto:
Funciones IFERROR anidadas para realizar Vlookups secuenciales

Para obtener una explicación detallada de la lógica de la fórmula, consulte Cómo realizar búsquedas V secuenciales en Excel.

IFERROR en fórmulas de matriz

Como probablemente sepa, las fórmulas de matriz en Excel están diseñadas para realizar múltiples cálculos dentro de una sola fórmula. Si proporciona una fórmula o expresión de matriz que da como resultado una matriz en el argumento de valor de la función IFERROR, devolverá una matriz de valores para cada celda en el rango especificado. El siguiente ejemplo muestra los detalles.

Digamos que tiene Total en la columna B y Precio en la columna C, y desea calcular la Cantidad total. Esto se puede hacer usando el siguiente fórmula matricial, que divide cada celda del rango B2:B4 por la celda correspondiente del rango C2:C4, y luego suma los resultados:

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

La fórmula funciona bien siempre que el rango del divisor no tenga ceros o celdas vacías. Si hay al menos un valor 0 o una celda en blanco, el #DIV/0! se devuelve el error:
Una división por cero error

Para corregir ese error, simplemente haga la división dentro de la función IFERROR:

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

Lo que hace la fórmula es dividir un valor en la columna B por un valor en la columna C en cada fila (100/2, 200/5 y 0/0) y devolver la matriz de resultados {50; 40; #DIV/0!}. ¡La función IFERROR detecta todos los #DIV/0! errores y los reemplaza con ceros. Y luego, la función SUMA suma los valores en la matriz resultante {50; 40; 0} y genera el resultado final (50+40=90).
IFERROR en una fórmula matricial

Nota. Recuerde que las fórmulas de matriz deben completarse presionando el acceso directo Ctrl + Shift + Enter.

SI ES ERROR frente a SI ES ERROR

Ahora que sabe lo fácil que es usar la función IFERROR en Excel, puede preguntarse por qué algunas personas aún se inclinan por usar la combinación IF ISERROR. ¿Tiene alguna ventaja frente a IFERROR? Ninguna. En los viejos tiempos de Excel 2003 y anteriores, cuando IFERROR no existía, IF ISERROR era la única forma posible de detectar errores. En Excel 2007 y versiones posteriores, es solo una forma un poco más compleja de lograr el mismo resultado.

Por ejemplo, para detectar errores de Vlookup, puede usar cualquiera de las fórmulas a continuación.

En Excel 2007 – Excel 2016:

SI.ERROR(BUSCARV(…), «No encontrado»)

En todas las versiones de Excel:

SI(ESERROR(BUSCARV(…)), «No encontrado», BUSCARV(…))

Tenga en cuenta que en la fórmula IF ISERROR VLOOKUP, debe buscar V dos veces. En lenguaje sencillo, la fórmula se puede leer de la siguiente manera: si Vlookup da como resultado un error, devuelve «No encontrado», de lo contrario, genera el resultado de Vlookup.

Y aquí hay un ejemplo de la vida real de una fórmula Excel If Iserror Vlookup:

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

Fórmula IF ISERROR VLOOKUP en Excel

IFERROR contra IFNA

Introducido con Excel 2013, IFNA es una función más para verificar una fórmula en busca de errores. Su sintaxis es similar a la de IFERROR:

IFNA(valor, valor_si_na)

¿En qué se diferencia IFNA de IFERROR? La función IFNA captura solo errores #N/A mientras que IFERROR maneja todos los tipos de error.

¿En qué situaciones puede querer usar IFNA? Cuando no es prudente disfrazar todos los errores. Por ejemplo, cuando trabaje con datos importantes o confidenciales, es posible que desee recibir alertas sobre posibles fallas en su conjunto de datos, y los mensajes de error estándar de Excel con el símbolo «#» podrían ser indicadores visuales vívidos.

Veamos cómo puede crear una fórmula que muestre el mensaje «No encontrado» en lugar del error N/A, que aparece cuando el valor de búsqueda no está presente en el conjunto de datos, pero llama su atención sobre otros errores de Excel.

Supongamos que desea extraer Qty. de la tabla de búsqueda a la tabla de resumen como se muestra en la siguiente captura de pantalla. Utilizando el Fórmula de Excel Iferror Vlookup produciría un resultado estéticamente agradable, lo cual es técnicamente incorrecto porque los Limones existen en la tabla de búsqueda:
La función IFERROR detecta todos los errores

Para capturar #N/A pero mostrar el error #DIV/0, use la función IFNA en Excel 2013 y Excel 2016:

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

O bien, la combinación IF ISNA en Excel 2010 y versiones anteriores:

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

La sintaxis de las fórmulas IFNA VLOOKUP y IF ISNA VLOOKUP es similar a la de IFERROR BUSCARV y SI ES UN ERROR BUSCARV Discutido antes.

Como se muestra en la captura de pantalla a continuación, la fórmula Ifna Vlookup devuelve «No encontrado» solo para el elemento que no está presente en la tabla de búsqueda (Melocotones). ¡Para Lemons, muestra #DIV/0! lo que indica que nuestra tabla de búsqueda contiene un error de división por cero:
La función IFNA detecta solo errores #N/A

Mejores prácticas para usar IFERROR en Excel

A estas alturas ya sabe que la función IFERROR es la forma más fácil de detectar errores en Excel y enmascararlos con celdas en blanco, valores cero o mensajes personalizados propios. Sin embargo, eso no significa que deba envolver todas y cada una de las fórmulas con el manejo de errores. Las siguientes recomendaciones simples pueden ayudarlo a mantener el equilibrio.

  1. No atrape los errores sin una razón.
  2. Envuelva la parte más pequeña posible de una fórmula en IFERROR.
  3. Para manejar solo errores específicos, use una función de manejo de errores con un alcance más pequeño:
    • IFNA o IF ISNA para capturar solo errores #N/A.
    • ISERR para capturar todos los errores excepto #N/A.

Así es como usa la función IFERROR en Excel para atrapar y manejar errores. Para ver más de cerca las fórmulas discutidas en este tutorial, puede descargar nuestra muestra SI ERROR libro de Excel. Gracias por leer y espero verte en nuestro blog la próxima semana.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas