Busca un valor en la primera columna de una tabla y devuelve algo de una columna situada a su derecha.
BUSCARV responde a una sola pregunta: dado un valor que ya tengo, ¿cuál es el valor correspondiente en otra columna? Tienes el nombre de un producto y quieres su precio; tienes un número de empleado y quieres su departamento. BUSCARV recorre hacia abajo la primera columna de una tabla hasta encontrar tu valor, salta a la columna que le has pedido y devuelve lo que haya ahí.
La V es de vertical: busca hacia abajo por una columna, no a lo ancho de una fila. De esa decisión de diseño nacen casi todas las quejas sobre BUSCARV. El valor que buscas tiene que estar en la primera columna del rango que le pasas, y la columna que quieres recuperar tiene que estar a su derecha. Cuando tus datos no están en ese orden, BUSCARV no puede ayudarte y necesitas INDICE+COINCIDIR o BUSCARX.
Aun así merece la pena aprenderla bien. BUSCARV está en millones de hojas que ya existen, es la función por la que preguntan en las entrevistas, y sobre una tabla bien orientada es más corta y más clara que las alternativas.
=BUSCARV(valor_buscado; matriz_tabla; indicador_columnas; [ordenado])valor_buscadomatriz_tablaindicador_columnasordenadoEncabezados en la fila 1, datos en A2:D5.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | Categoría | Stock | Precio |
| 2 | Taladro inalámbrico | Herramientas | 24 | 89.99 |
| 3 | Alargador | Electricidad | 140 | 12.5 |
| 4 | Gafas de seguridad | Seguridad | 68 | 7.25 |
| 5 | Guantes de trabajo | Seguridad | 210 | 5.4 |
=BUSCARV("Gafas de seguridad"; A2:D5; 4; FALSO)Resultado: 7,25
Encuentra Gafas de seguridad en la columna A y devuelve la 4.ª columna de A2:D5, es decir, Precio.
=BUSCARV("Guantes de trabajo"; A2:D5; 2; FALSO)Resultado: Seguridad
La misma búsqueda, otra columna. La columna 2 de A2:D5 es Categoría, porque se cuenta desde el borde izquierdo del rango.
=BUSCARV(A3; $A$2:$D$5; 3; FALSO)Resultado: 140
Busca una referencia de celda en lugar de texto escrito, para poder arrastrar la fórmula. Los $ evitan que la tabla se desplace al hacerlo.
=SI.ERROR(BUSCARV("Martillo"; A2:D5; 4; FALSO); "Sin stock")Resultado: Sin stock
Martillo no está en la tabla. Envolver la búsqueda en SI.ERROR convierte el #N/D en algo que quien lea la hoja puede entender.
Leer sobre una fórmula no es lo mismo que escribirla. Abre el ejercicio de esta función y escríbela en una hoja real: recibirás comentarios inmediatos sobre qué celda está mal y por qué.
Por qué ocurre: El valor no está en la primera columna, o sí está pero no en una forma que coincida. Espacios sobrantes, un número guardado como texto o una mayúscula distinta se leen todos como «no encontrado».
Cómo resolverlo: Envuelve el valor buscado en ESPACIOS() para eliminar espacios sobrantes y comprueba si un lado es texto y el otro un número. Si es normal que falte, envuelve todo en SI.ERROR.
Por qué ocurre: indicador_columnas es mayor que el número de columnas de matriz_tabla: pedir la columna 5 de un rango de cuatro.
Cómo resolverlo: Vuelve a contar las columnas del rango empezando por 1 en su borde izquierdo. Suele aparecer después de que alguien borre una columna dentro de la tabla.
Por qué ocurre: indicador_columnas es menor que 1, o es texto en lugar de un número.
Cómo resolverlo: Asegúrate de que el tercer argumento es un número entero positivo.
Por qué ocurre: Se omitió el argumento ordenado, así que tomó el valor VERDADERO y devolvió la coincidencia más cercana por debajo en lugar de una exacta.
Cómo resolverlo: Pon siempre FALSO como cuarto argumento. Es el error más común de BUSCARV y es silencioso: la hoja parece correcta y los números están mal.
Casi siempre es un problema de formato, no un valor que falte. Lo habitual es un espacio sobrante en una de las dos celdas, o un número guardado como texto en un lado y como número real en el otro. Compruébalo con =A2=D2: si devuelve FALSO para dos celdas que parecen idénticas, ahí está el problema.
No. Solo devuelve columnas situadas a la derecha de la que ha buscado. Si el valor que quieres está a la izquierda de tu columna de búsqueda, usa INDICE+COINCIDIR o BUSCARX, que pueden devolver un valor en cualquier dirección.
FALSO exige una coincidencia exacta y devuelve #N/D si no la hay. VERDADERO devuelve el mayor valor menor o igual al buscado y requiere que la primera columna esté ordenada de forma ascendente. VERDADERO solo sirve para tramos: impuestos, notas, portes. Para todo lo demás, usa FALSO.
Usa BUSCARX para trabajo nuevo si tu Excel la tiene: busca en ambas direcciones, usa coincidencia exacta por defecto y sobrevive a que se inserten columnas. Mantén BUSCARV para hojas que deban abrirse en versiones antiguas, y apréndela igualmente porque te la encontrarás en archivos de otras personas.
Lecturas más largas donde esta función hace trabajo real en una hoja real.