Descripción
Utiliza esta función para devolver un valor especificado si una expresión se evalúa como #N/A; y si no es así, devuelve el resultado de la expresión.
Sintaxis
IFNA(value, value_if_na)
Entradas
Esta función acepta los siguientes argumentos:
| Nombre | Obligatorio | Descripción | Entrada válida |
|---|---|---|---|
valor |
Sí | El valor o la expresión que hay que comprobar para detectar un error #N/A. | Un número, texto o valor lógico, una referencia a una celda que contenga cualquiera de ellos, un rango de celdas que incluya cualquiera de ellos o una fórmula que dé como resultado cualquiera de ellos. |
valor_si_na |
Sí | Valor para devolver si la expresión se evalúa como #N/A. | Cualquier valor, incluyendo texto, números o valores lógicos. |
Ejemplos
Datos de muestra
| Un | B | |
|---|---|---|
| 1 | Apple | $1.50 |
| 2 | Plátano | $0.75 |
| 3 | Cereza | $2.25 |
| 4 | Fecha | $3.00 |
Ejemplos de fórmulas
| Caso práctico | Fórmula | Explicación y resultado |
|---|---|---|
| Busca un valor en un rango y devuelve un valor correspondiente de otra columna, y si no se encuentra el valor buscado, proporciona un mensaje personalizado. | =IFNA(VLOOKUP("Banana",A1:B4,2,FALSE), "Not in stock") |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve 0,75. |
| Busca un valor en un rango y devuelve un valor correspondiente de otra columna, y si no se encuentra el valor buscado, proporciona un mensaje personalizado. | =IFNA(VLOOKUP("Uva",A1:B4,2,FALSE), "No está en existencias") |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve No está en stock. |
| Busca un valor en un rango que empiece por una letra concreta y devuelve el valor de la columna asociada; si no se encuentra el valor buscado, proporciona un mensaje personalizado. | =IFNA(INDEX(B1:B4,MATCH("D*",A1:A4,0)), "No hay fruta que empiece por 'D'") |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve 3,00. |
| Realiza una operación de división; si se produce un error de "división por cero", proporciona un mensaje a medida. | =IFNA(1/0, "No se puede dividir por cero") |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve #DIV/0!. |
Notas
- IFNA solo capta errores #N/A. (Indican que no se han encontrado los datos).
- Si una fórmula no produce un error #N/A, IFNA devuelve ese valor. Si la fórmula devuelve un error diferente, el IFNA devuelve ese valor de error.
- Para los errores #N/A, IFNA te permite especificar un valor alternativo que se mostrará si se devuelve ese error.
- IFNA es especialmente útil con las funciones VLOOKUP, HLOOKUP, MATCH, y INDEX, que suelen devolver #N/A cuando no se encuentra ningún valor.
- IFNA puede anidarse dentro de otras funciones o utilizarse como parte de una fórmula mayor. (Véanse los ejemplos anteriores).
Recomendaciones
- Utiliza IFNA cuando quieras tratar específicamente los errores #N/A pero permitiendo que se muestren otros tipos de errores.
- IFNA es más eficaz que utilizar
IF(ISNA(...))porque solo evalúa la expresión una vez. - Para gestionar varios tipos de error, considera la posibilidad de utilizar IFERROR en su lugar.
- Cuando utilices IFNA con funciones de búsqueda, considera si devolver un valor predeterminado para los datos que faltan es adecuado para tu caso de uso.
- El IFNA puede ser útil en modelos financieros en los que es importante distinguir entre un valor cero verdadero y un escenario de "no se ha encontrado".