La función IFERROR en Excel
SI.ERROR (Inglés: IFERROR) envuelve otra fórmula. Si esa fórmula funciona, obtienes su resultado. Si devuelve cualquier error (#N/A, #¡DIV/0!, #¡VALOR!, #¡REF!, #¿NOMBRE?…), obtienes un valor que tú eliges en su lugar, como 0, un texto vacío o un mensaje.
Se usa sobre todo con búsquedas y divisiones, donde de vez en cuando se espera que falte un valor o que aparezca un cero.
Sintaxis
=IFERROR(value, value_if_error)
| Argumento | Qué significa |
|---|---|
| value | La fórmula que quieres comprobar. |
| value_if_error | Lo que se devuelve si esa fórmula produce un error. |
Ejemplos
1. Evitar #¡DIV/0! al dividir
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Región | Ingresos | Pedidos | Por pedido |
| 2 | Norte | 5000 | 20 | |
| 3 | Sur | 0 | 0 | 0 |
Sur tiene 0 pedidos, así que B3/C3 daría #¡DIV/0!. SI.ERROR (Inglés: IFERROR) muestra 0 en su lugar.
2. Los resultados normales pasan sin cambios
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Región | Ingresos | Pedidos | Por pedido |
| 2 | Norte | 5000 | 20 | 250 |
| 3 | Sur | 0 | 0 |
5000 / 20 = 250 no es un error, así que SI.ERROR (Inglés: IFERROR) lo devuelve tal cual.
3. Un mensaje amable para una búsqueda sin resultado
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Región | Ingresos | Pedidos | Por pedido | Ingresos de Este | |
| 2 | Norte | 5000 | 20 | Sin datos | ||
| 3 | Sur | 0 | 0 |
Este no está en la tabla, así que BUSCARV (Inglés: VLOOKUP) devuelve #N/A y SI.ERROR (Inglés: IFERROR) muestra «Sin datos».
Errores comunes
Ocultar errores reales. SI.ERROR (Inglés: IFERROR) también oculta las erratas (#¿NOMBRE?) y las referencias rotas (#¡REF!), así que una fórmula incorrecta puede parecer correcta.
Corrección: Crea y prueba primero la fórmula, y luego envuélvela. En las búsquedas, SI.ND (Inglés: IFNA) solo atrapa «no encontrado» (#N/A) y deja visibles los demás errores.
Devolver "" y luego calcular con ello. El texto vacío en una fórmula matemática puede causar #¡VALOR!.
Corrección: Devuelve 0 cuando la celda se use en más cálculos.
Preguntas frecuentes
¿Cuál es la diferencia entre IFERROR e IFNA?
SI.ERROR (Inglés: IFERROR) atrapa todos los tipos de error. SI.ND (Inglés: IFNA) atrapa solo #N/A, el error de «no encontrado» de las búsquedas, lo que suele ser más seguro.
¿Necesita XLOOKUP IFERROR?
Normalmente no: BUSCARX (Inglés: XLOOKUP) tiene su propio argumento if_not_found.
Funciones relacionadas
- IFIF comprueba una condición y devuelve un valor si es verdadera y otro si es falsa.
- VLOOKUPVLOOKUP busca un valor en la primera columna de una tabla y devuelve un valor de la misma fila de otra columna.
- XLOOKUPXLOOKUP busca en una columna o fila y devuelve el valor coincidente de otra, en cualquier dirección, con un mensaje de «no encontrado» integrado.