Menu

Error #N/A en Excel: BUSCARV y BUSCARX no encuentran

#N/A significa que una búsqueda no encontró el valor que buscaba. Revisa las erratas, los espacios de más y un rango de tabla que se movió al copiar la fórmula hacia abajo, y luego usa SI.ND para mostrar un mensaje con los valores que de verdad faltan.

Todas las hojas de esta página están vivas: cambia un número o una fórmula y se recalculan.

#N/A significa "no disponible" (del inglés "not available"): una búsqueda como BUSCARV, BUSCARX o COINCIDIR no encontró el valor que buscaba. Abajo, =VLOOKUP(E2,A2:B6,2,FALSE) devuelve #N/A porque Kiwi no está en la lista. En Excel en español es BUSCARV (VLOOKUP en inglés), y la tabla también acepta las fórmulas escritas en español, con punto y coma (o con comas, como en México): =BUSCARV(E2;A2:B6;2;FALSO). Cambia E2 a Pear y devuelve 1.5.

Buscar un producto que no está
F2
ABCDEF
1ProductPriceLook forPrice
2Apple1.2Kiwi#N/A
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#N/A El valor buscado no está en el rango de búsqueda.En Excel en español: =BUSCARV(E2;A2:B6;2;FALSO)

Cuando el valor de verdad falta, #N/A es la respuesta correcta, y SI.ND (más abajo) la convierte en un mensaje. Los casos que vale la pena arreglar son aquellos en los que el valor está y la búsqueda falla igual. Excel en algunos idiomas muestra el error con su propio nombre, como #NV en alemán, #N/D en portugués e italiano, #Н/Д en ruso y #YOK en turco; en español se mantiene #N/A, y la tabla muestra los nombres de error en inglés. Es el mismo error.

#N/A después de copiar una búsqueda hacia abajo

La causa más frecuente en hojas reales: la fórmula funciona en la primera fila, y algunas filas de abajo muestran #N/A aunque los productos están en la lista.

Rango de tabla sin $
F4
ABCDEF
1ProductPriceOrderPrice
2Apple1.2Apple1.2
3Pear1.5Plum0.8
4Plum0.8Pear#N/A
5Bread2.4Milk1.1
6Milk1.1Apple#N/A
#N/A El valor buscado no está en el rango de búsqueda.En Excel en español: =BUSCARV(E4;A4:B8;2;FALSO)

Haz clic en F4: su rango de tabla es A4:B8, dos filas más abajo que el de F2. Copiar la fórmula hacia abajo movió el rango con ella, así que Pear (fila 3) y Apple (fila 2) se quedaron fuera. F3 y F5 funcionan solo porque Plum y Milk siguen dentro de sus rangos. Haz clic en F2 y cambia el rango a $A$2:$B$6: toda la columna la sigue y aparecen todos los precios. Los signos $ fijan el rango; consulta referencias absolutas.

#N/A por espacios de más

"Pear " con un espacio al final y "Pear" son valores distintos para Excel. Los espacios vienen de datos escritos a mano, copiados de páginas web o exportados de otros sistemas, y no se ven en la celda.

Un espacio al final en la tabla
E2
ABCDEF
1ProductPriceLook forPriceLength of A2
2Pear 1.5Pear#N/A5
3Apple1.2
4Plum0.8
#N/A El valor buscado no está en el rango de búsqueda.En Excel en español: =BUSCARV(D2;A2:B4;2;FALSO)

E2 devuelve #N/A. F2 muestra la causa: Pear tiene 4 letras, pero A2 tiene 5 caracteres. Borra el espacio de A2 y la búsqueda funciona. Tres formas de arreglarlo para siempre:

  • Limpia la columna: pon =ESPACIOS(A2) en una columna auxiliar, cópiala hacia abajo, y luego cópiala y usa Inicio > Pegar > Valores sobre la original.
  • Recorta el valor buscado cuando los espacios están en lo que escribes: =BUSCARV(ESPACIOS(D2);A2:B4;2;FALSO).
  • Recorta toda la columna de búsqueda dentro de la fórmula (Excel 2021 o Microsoft 365): =BUSCARX(D2;ESPACIOS(A2:A4);B2:B4).

El texto pegado de páginas web puede contener un espacio de no separación, que ESPACIOS no quita. La página de ESPACIOS muestra cómo sustituirlo con SUSTITUIR(A2;CARACTER(160);" ").

#N/A cuando el valor no está en la primera columna

BUSCARV busca solo en la primera columna de su rango y devuelve una columna a su derecha. Buscar un valor de cualquier otra columna devuelve #N/A, aunque esté en la tabla.

Buscar por código
F2
ABCDEFG
1ProductCodePriceCodeVLOOKUPXLOOKUP
2AppleA-171.2P-22#N/APear
3PearP-221.5
4PlumP-310.8
5BreadB-052.4
6MilkM-401.1
#N/A El valor buscado no está en el rango de búsqueda.En Excel en español: =BUSCARV(E2;A2:C6;1;FALSO)

Los códigos están en la columna B, así que BUSCARV sobre A2:C6 busca P-22 entre los nombres de producto y falla. Tampoco puede devolver el nombre del producto, que está antes del código. BUSCARX (XLOOKUP en inglés) recibe por separado la columna de búsqueda y la de retorno, y encuentra Pear. En Excel 2019 y anteriores, =INDICE(A2:A6;COINCIDIR(E2;B2:B6;0)) hace lo mismo.

#N/A por números guardados como texto

Un número de pedido escrito como texto ('1001, o importado de un CSV) nunca coincide con el número 1001, y al revés tampoco. Las dos celdas muestran 1001, así que este caso cuesta verlo. En Excel:

A2:B6 holds order numbers stored as text, E2 holds the number 1001
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(E2&"",A2:B6,2,FALSE)       found: E2&"" turns the number into text

A2:B6 holds real numbers, E2 holds "1001" as text
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(--E2,A2:B6,2,FALSE)        found: -- turns the text into a number

En Excel en español, las dos soluciones son =BUSCARV(E2&"";A2:B6;2;FALSO) y =BUSCARV(--E2;A2:B6;2;FALSO).

=ESTEXTO(A2) te dice qué lado es texto, y un pequeño triángulo verde en la esquina de una celda marca un número guardado como texto. Para convertir una columna entera, consulta texto a número.

SI.ND o SI.ERROR: mostrar un mensaje cuando no se encuentra nada

Cuando un valor puede faltar con razón, muestra algo más útil que #N/A. Usa SI.ND (IFNA en inglés), no SI.ERROR (IFERROR en inglés):

SI.ND frente a SI.ERROR alrededor de una búsqueda rota
F2
ABCDEFG
1ProductPriceLook forIFNAIFERROR
2Apple1.2Pear#REF!Not found
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#REF! La fórmula apunta a una celda que no existe.En Excel en español: =SI.ND(BUSCARV(E2;A2:B6;3;FALSO);"Not found")

Las dos fórmulas piden la columna 3 de un rango de dos columnas, un error. SI.ND deja pasar el #REF! (#¡REF! en Excel en español), así que ves el fallo. SI.ERROR lo oculta y dice "Not found" para Pear, que sí está en la lista. Cambia los dos 3 por 2: ahora las dos muestran 1.5, y con Kiwi en E2 las dos muestran "Not found". BUSCARX trae el mensaje incorporado: =BUSCARX(E2;A2:A6;B2:B6;"Not found"). Hay más sobre la diferencia en SI.ERROR.

Arreglar una búsqueda rota por los espacios

Encuentra el precio pese a los espacios
F2
ABCDEF
1ProductPriceLook forPrice
2Apple 1.2Plum
3Pear 1.5
4Plum 0.8
5Bread 2.4
6Milk 1.1
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.

Tu turno: Todos los productos de la lista se importaron con un espacio al final, así que =VLOOKUP(E2,A2:B6,2,FALSE) devuelve #N/A. Escribe en F2 una fórmula que aun así devuelva el precio del producto de E2.

=BUSCARX(E2;ESPACIOS(A2:A6);B2:B6) recorta la lista dentro de la fórmula. =BUSCARV(E2&" ";A2:B6;2;FALSO) también funciona aquí, pero solo mientras todos los productos tengan exactamente un espacio al final; limpiar la columna con ESPACIOS es el arreglo que dura.

Preguntas frecuentes

¿Qué significa #N/A en Excel?

N/A viene del inglés "not available", no disponible. Significa que una función de búsqueda (BUSCARV, BUSCARH, BUSCARX, COINCIDIR, COINCIDIRX) no encontró el valor que se le dio. =NOD() también lo devuelve a propósito, por ejemplo para que un gráfico se salte un punto en lugar de dibujarlo como 0.

¿Por qué BUSCARV devuelve #N/A si el valor existe?

Los dos valores no son exactamente iguales. Razones habituales: un espacio al final en uno de ellos, un número guardado como texto en uno y como número en el otro, o un rango de tabla sin $ que se deslizó hacia abajo al copiar la fórmula, de modo que la fila con el valor ya no está dentro.

¿Por qué BUSCARV devuelve #N/A en unas filas sí y en otras no?

El rango de la tabla no se fijó antes de copiar la fórmula hacia abajo, así que en cada fila empieza una fila más abajo: A2:B6 en la primera fila pasa a ser A4:B8 dos filas después, y los valores por encima del rango ya no se encuentran. Fíjalo con $: =BUSCARV(E2;$A$2:$B$6;2;FALSO).

¿Por qué BUSCARX devuelve #N/A?

El valor no está en la matriz de búsqueda, o se diferencia de ella por un espacio o por ser texto en lugar de número. BUSCARX busca la coincidencia exacta por defecto, así que no acepta nada parecido. Su cuarto argumento sustituye el error: =BUSCARX(E2;A2:A6;B2:B6;"Not found").

¿Por qué COINCIDIR devuelve #N/A?

Con el tipo de coincidencia 0, el valor no está en el rango, igual que con BUSCARV. Con el tipo 1 u omitido, el rango debe estar ordenado de forma ascendente y el valor no puede ser menor que su primer elemento; usa =COINCIDIR(E2;A2:A6;0) para una coincidencia exacta.

Ilustración de los lenguajes de programación de Coddy

Aprende a programar con Coddy

COMENZAR