La función BUSCARV es una de las más útiles y utilizadas por los usuarios medios de Excel.
Mediante esta función se realiza la búsqueda de un valor en la primera columna de un rango y, en caso de encontrarlo, nos devolverá como resultado el valor que se encuentra en la columna que le indiquemos de esa misma fila del valor localizado.
Lo mejor para entender esta función es verlo en un ejemplo sencillo.
Ejemplo de utilización de la función BUSCARV
Imaginemos un rango de datos que incluyen el DNI o código personal de una serie de personas, su nombre y el número de teléfono de las mismas.

Nos puede interesar que al indicar el DNI de esas personas me indique de forma automática su nombre, su teléfono o ambas cosas.

En nuestro caso nos interesa que cuando seleccione el DNI (Documento Nacional de Identidad) o código de identificación de una persona en la celda F5, nos aparezca su nombre en la celda F6 y su número de teléfono en la celda F7.
Este ejemplo es muy simple pero consideremos las búsquedas en miles de datos de diferentes hojas diferentes. Es una fórmula con muchos usos y muy potente.
La resolución de este caso es muy sencilla utilizando la fórmula BUSCARV.

En la celda F6 introducimos la fórmula =BUSCARV(G5;A4:C10;2;FALSO)
- El valor buscado es el de la celda G5 (es decir el DNI de la persona).
- Se busca en la primera columna del rango de datos A4:C10
- En caso de encontrarlo nos interesa que nos muestre el valor correspondiente a la segunda columna del rango seleccionado (dado que es en la segunda columna donde aparece el nombre).
- El último argumento es opcional y es un valor lógico, es decir falso o verdadero. Con este argumento indicamos a la función BUSCARV el tipo de búsqueda que realizará y que puede ser una búsqueda exacta (FALSO) o una búsqueda aproximada (VERDADERO). Como deseamos realizar una búsqueda exacta indicamos FALSO.
Para la celda F7, en la que deseamos que busque de nuevo por DNI pero nos muestre el número de teléfono, introducimos exactamente la misma fórmula pero indicando como indicador de columnas un 3.
Limitación de la función BUSCARV
Como hemos indicado, la función BUSCARV es muy potente y útil. Sin embargo tiene la limitación de buscar un valor únicamente en la primera columna de un rango.
En ocasiones los datos se nos presentan de forma que no sabemos en qué columna se encuentra el dato buscado.
Utilización de BUSCARV realizando la búsqueda en varias columnas
Imaginemos el siguiente caso:

Queremos saber el número de unidades de un artículo, identificando al artículo mediante su código. Deseamos indicar en la celda H7 el código del artículo, en este ejemplo AA21, y que nos devuelva en número de unidades que quedan del mismo, que debe ser 55.
Si utilizamos la función =BUSCARV(H7;A3:D22;2;FALSO) obtenemos el dato correctamente.

Si en la celda H7 introducimos el código AA13 nos mostrará que hay 46 unidades.
La fórmula funciona correctamente, pero únicamente con los códigos que aparecen en la columna A.
¿Qué ocurriría si el código que buscamos se encuentra en la columna C? Que no encontrará nada, ya que BUSCARV únicamente busca en la primera columna del rango de datos.
Hagamos la prueba con un artículo que se encuentre en la columna C, por ejemplo, AA41. Vemos que nos da un error, ya que no lo encuentra.

¿Cómo podemos resolver esta situación? Utilizando la función SI.ERROR.
Utilización combinada de la función SI.ERROR y BUSCARV
La función SI.ERROR tiene dos argumentos. El primero es el valor o expresión que va a evaluar y el segundo argumento es el valor que regresará en caso de que el primer argumento devuelva un error.
Como hemos visto que cuando no encuentra un valor con la función BUSCARV nos presenta un error, podemos utilizar la función SI.ERROR conjuntamente con BUSCARV para realizar búsquedas en varios rangos.
En el ejemplo anterior, podemos indicarle que realice la búsqueda en el rango A3:B22, y en caso de que nos devuelva un error (porque no ha encontrado el valor) realice la búsqueda en el rango C3:D22.
Realicemos el ejercicio con el valor que antes nos daba error:

Hemos introducido la fórmula siguiente:
=SI.ERROR(BUSCARV(H7;A3:B22;2;FALSO);BUSCARV(H7;C3:D22;2;FALSO))
De esa forma Excel ha realizado la búsqueda del valor de la celda H7 en el rango A3:B22. Al no encontrarlo, utilizaría el segundo argumento de la función SI.ERROR, es decir, busca el valor de la celda H7 en el rango C3:D22. Y ahí si que encuentra el valor mostrándonos correctamente el número de unidades que tiene el artículo AA41.
Utilizando las funciones SI.ERROR y BUSCARV de esta forma realiza las búsquedas en los dos rangos.
Además anidando funciones SI.ERROR podemos realizar búsquedas en tantos rangos queramos.
Video explicativo:
Suscríbete a mi canal de YouTube:
Excelente articulo.
buenos días, no se si se pueda lo que estoy buscando, tengo unas 100 columnas con un aproximado de 100 NÚMEROS por COLUMNA (todos diferentes) quiero encontrar la formula que al momento que yo coloque un número cualquiera en la celda me devuelva un «si» o un «no» dependiendo si está el número, quedo pendiente de tu respuesta.
Gracias y saludos.
hola No sabes, como me has ayudado con este tip, te lo agradezco muchísimo, saludos.
Esto Solo funciona si es en 2 columnas, tengo 3
Hola Edgar,
En caso de tener varias columnas tendrías que anidar más funciones Si.error
Por ejemplo:
=SI.ERROR(BUSCARV(G8;A1:B3;2;0);SI.ERROR(BUSCARV(G8;C1:D3;2;0);BUSCARV(G8;E1:F3;2;0)))
Un saludo
¡¡mUCHÍSIMAS GRACIAS!!
PERO COMO SE PODRIA ANIDAR PARA BUSCAR EN MÁS DE 4 CELDAS
hola buenos días disculpa que fórmula se usa cuando tú indicador de columna son varias columnas
Hola, no sé si te he entendido bien la pregunta. Si puede estar en varias columnas el resultado una posibilidad es la de combinar la función SI.ERROR con la función BUSCARV como indico en el último apartado del artículo.
Cordial saludo.. por que buscarv no devuelve el valor cuando el «valor buscado» es una celda que contiene una fórmula… se puede resolver este aparente error?
buenos días,
tengo una tabla donde en la primera fila tengo los títulos de las columnas. como puedo hacer una busqueda y que cuando encuentre una coincidencia me devuelva el titulo de la columna:
continente pais capital
europa españa madrid
america del sur argentina buenos aires
busco – buenos aires
me devuelve – capital
Hola, si el texto a buscar con la opción buscarv aparece más de una ocasión en la columna de busqueda (digamos 3 veces) y realmente me interesa «traer» no solo el primer valor que encuentre ASOCIADO, sino los 3 (QUE SON DIFERENTES), cual seria la sintaxis de la formula?
hola! si buscara a8 en un rango A:B y B ESTUVIERA VACÍO y necesitara que buscara en un rango A:C y así sucesivamente hasta econtrar un texto o valor…Como sería?
Hola, me sirvio perfecto la formula, pero si tengo que traer de otra hoja, lo probe y ahi me da error. como seria. gracias
Si tengo el número de semanas
Semana 49
Semana 49
Semana 49
Semana 49 1000
Y hago la fórmula buscarv como le hago para que las 3 primeras filas no me las traiga y me traiga el dato de la cuarta columna que si tiene datos
Tengo un archivo que así lo ejecuta pero si modifico, ya no me trae el dato de la 4 columna si no de la primera
COMO PODRÍA SE PUEDE ANIDAR LA FORMULA PARA BUSCAR EN 4 COLUMNAS O MÁS, YA QUE NO ME QUEDA CLARO EL EJEMPLO QUE SE PUSO CON 3, SI SIRVE, PERO NO SÉ COMO USARLO PARA UNA CUARTA.
Hola buenas tardes, TEngo una base De datos que necesito cruzar pero en la matriz hay rut repetidos, estos rut si bien estan repetidos, en las celdas tienen DIstinta informacion
Ejemplo,
RUT. Idioma
7777. inglés
7777. ESPAÑol
7777. Portugues
Solo me llava a la base el primer idioma ,,como puedo dejarlos UNIDOS, osea que me Pueda llevar los 3 idiomas y dejarlos solo una vez el RUT
Ojala me.pudieran ayudar ,mil gracias