BUSCARV (en inglés, VLOOKUP) es la función de Excel que sirve para buscar un dato en una tabla y traer otro distinto de la misma fila. Es, en la práctica, la forma más habitual de cruzar dos hojas: escribes un código en una y Excel te devuelve, automáticamente, el nombre, el precio, la categoría o lo que necesites de la otra.
En este tutorial vas a montar una hoja de Pedidos de una pequeña tienda que se nutre de una hoja de Productos con los precios. Al terminar, escribirás un código en Pedidos y el nombre y el precio aparecerán solos. BUSCARV está disponible en todas las versiones de Excel, desde Excel 2007 hasta Microsoft 365, y también en Excel para la web, para Mac y para móviles.
=BUSCARV(A2;Productos!A:D;2;FALSO)). Si tu Excel está configurado con punto decimal (México o Estados Unidos), el separador será la coma.Qué es BUSCARV y para qué te sirve en una hoja real
Imagina una tienda con una hoja Productos donde están todos los artículos: su código, su nombre, su categoría y su precio. Alguien tiene que pasar pedidos y solo conoce el código del producto. La hoja Pedidos se queda con el código en una columna y, en las siguientes, debe aparecer el nombre y el precio sin escribirlos a mano.
BUSCARV hace exactamente eso: le dices «busca este código en la hoja Productos» y, cuando lo encuentra, te trae el valor que está en la columna que le indiques (la 2 para el nombre, la 4 para el precio, y así). La "V" del nombre viene de vertical: busca hacia abajo, fila a fila, en la primera columna del rango que le das.
Su utilidad real es esa: cruzar dos hojas para no tener que copiar datos a mano y para que, si cambias un precio en Productos, el pedido lo refleje al instante.
Los cuatro argumentos de BUSCARV, uno por uno
BUSCARV tiene cuatro argumentos, en este orden: valor_buscado, matriz_buscar_en, indicador_columnas y [ordenado]. Los tres primeros son obligatorios; el cuarto, [ordenado], es opcional, aunque en la práctica casi siempre se escribe.
| Argumento | Qué le dices a Excel | Ejemplo con la hoja de la tienda |
|---|---|---|
| valor_buscado | El dato que ya tienes y que dispara la búsqueda | El código escrito en Pedidos (A2) |
| matriz_buscar_en | El rango de la hoja donde tiene que buscar | Productos!A:D |
| indicador_columnas | La columna del dato que quieres traer, contando desde la primera del rango | 2 para el nombre, 4 para el precio |
| [ordenado] | FALSO para coincidencia exacta, VERDADERO para aproximada |
FALSO en el día a día |
valor_buscado: el dato que ya tienes y que dispara la búsqueda
Es el código que el operario escribe en la hoja Pedidos. En la fórmula se referencia la celda donde está ese código, por ejemplo A2. Si en lugar de una celda escribes el valor a mano, el texto tiene que ir entre comillas: "P-001".
Una regla clave: el valor buscado siempre tiene que estar en la primera columna del rango que le pases a BUSCARV. Si el código está en la columna B de Productos pero tú le das como rango A:D, BUSCARV no lo encontrará nunca, porque mira solo en A.
matriz_buscar_en: la tabla donde Excel va a buscar
Es el rango de la hoja Productos. Puede ser un rango con dos puntos (A2:D7) o una columna entera (A:D). Lo importante es que la primera columna de ese rango contenga el valor que estás buscando.
=BUSCARV(A2;Productos!A:D;2;FALSO)). Si tu Excel usa el punto como decimal, el separador será la coma.indicador_columnas: la columna del dato que quieres traer
Es un número que le dice a Excel qué columna del rango quieres como resultado. Se cuenta desde la primera columna del rango, no desde la columna A de la hoja. Si tu rango es A:D, la 1 es el código, la 2 el nombre, la 3 la categoría y la 4 el precio.
Si pides la columna 5 en un rango que solo tiene 4 columnas, Excel devuelve el error #¡REF!, porque le estás pidiendo algo que no existe.
[ordenado]: FALSO para coincidencia exacta y VERDADERO para aproximada
El cuarto argumento decide el tipo de coincidencia. Con FALSO, BUSCARV busca el código exacto y, si no lo encuentra, devuelve #N/A. Con VERDADERO, busca el valor aproximado más cercano por debajo, lo que obliga a que la columna de búsqueda esté ordenada de menor a mayor.
En el día a día, el 90 % de las veces usarás FALSO: el código es el código, y si no está, no está. VERDADERO se reserva para tablas de tramos, como descuentos por cantidad o comisiones por ventas.
Escribir la primera fórmula en una hoja de Productos y Pedidos
Vamos a montar el libro. La hoja Productos tiene seis artículos con su código, nombre, categoría y precio. La hoja Pedidos tiene cuatro líneas con solo el código: BUSCARV se encargará de rellenar el nombre y el precio.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Código | Producto | Categoría | Precio |
| 2 | P-001 | Cuaderno A5 | Papelería | 3,20 |
| 3 | P-002 | Bolígrafo azul | Papelería | 1,50 |
| 4 | P-003 | Mochila escolar | Mochilas | 24,90 |
| 5 | P-004 | Calculadora básica | Electrónica | 12,00 |
| 6 | P-005 | Botella de agua | Hogar | 4,75 |
| 7 | P-006 | Lámpara LED | Iluminación | 18,40 |
| A | B | C | |
|---|---|---|---|
| 1 | Código | Producto | Precio |
| 2 | P-003 | ||
| 3 | P-001 | ||
| 4 | P-006 | ||
| 5 | P-004 |
Poner la fórmula a punto con el cuadro de nombres y la barra de fórmulas
- En la hoja Pedidos, haz clic en la celda B2.
- Escribe en la barra de fórmulas la siguiente fórmula y pulsa Entrar:
=BUSCARV(A2;Productos!A:D;2;FALSO)
Verás que en B2 aparece Mochila escolar, el nombre del producto cuyo código es P-003.
Recuento: 1 y la celda debe mostrar texto, no un número. Si ves 0 o #¿NOMBRE?, revisa que has escrito BUSCARV con punto y coma y sin tilde.Copiar la fórmula al resto de filas con el controlador de relleno
- Vuelve a seleccionar B2.
- Sitúa el cursor sobre la esquina inferior derecha de la celda (el cuadrado pequeño): el cursor se convierte en una cruz negra fina, el controlador de relleno.
- Arrastra hacia abajo hasta B5 y suelta.
Las cuatro celdas mostrarán ahora los nombres correctos: Mochila escolar, Cuaderno A5, Lámpara LED y Calculadora básica. La fórmula se ha copiado y A2 se ha convertido en A3, A4 y A5 automáticamente. El rango Productos!A:D no se ha movido porque no lleva dólares: al copiar hacia abajo solo cambia la fila del valor buscado.
| A | B | C | |
|---|---|---|---|
| 1 | Código | Producto | Precio |
| 2 | P-003 | Mochila escolar | |
| 3 | P-001 | Cuaderno A5 | |
| 4 | P-006 | Lámpara LED | |
| 5 | P-004 | Calculadora básica |
Traer más columnas cambiando solo el indicador_columnas
Para sacar el precio, escribe en C2 la misma fórmula pero con indicador_columnas igual a 4 (el precio es la cuarta columna del rango A:D):
=BUSCARV(A2;Productos!A:D;4;FALSO)
Copia hacia abajo hasta C5 con el controlador de relleno. Verás los precios 24,90; 3,20; 18,40 y 12,00. Si quieres que Pedidos no dependa de Productos, selecciona C2:C5, cópialos con Ctrl+C, ve a Inicio > Portapapeles > Pegar y elige Valores: los precios quedan como números fijos.
BUSCARV con coincidencia exacta: el caso del día a día
En la práctica, el rango se suele escribir con referencias absolutas para que al copiar la fórmula no se desplace. La forma habitual de la fórmula en el día a día es esta:
=BUSCARV(A2;Productos!$A$2:$D$7;2;FALSO)
Aquí el rango va de la fila 2 a la 7 (las seis filas de datos) y está fijado con dólares. Si copias la fórmula a la derecha o hacia abajo, el rango no se moverá nunca.
Fijar el rango con F4 para que no se desplace al copiar
- En la barra de fórmulas, haz clic dentro del rango
Productos!A2:D7. - Selecciona la parte del rango que quieres fijar:
A2:D7. - Pulsa F4 (en Mac, Cmd+T) hasta que veas
$A$2:$D$7. Cada pulsación alterna entre fijar nada, solo la fila, solo la columna o ambas. - Pulsa Entrar y arrastra de B2 a B5 con el controlador de relleno.
Ahora, aunque copies la fórmula a otras celdas, BUSCARV siempre mirará en la misma tabla.
Qué pasa si BUSCARV no encuentra el código
Escribe en la celda A6 de Pedidos el código P-999, que no existe. La celda B6 mostrará #N/A. Es el resultado esperado: BUSCARV con FALSO busca coincidencia exacta y, si no la encuentra, lo dice con ese error. Más adelante lo envolveremos en SI.ERROR para que la hoja se vea limpia.
BUSCARV con coincidencia aproximada: cuándo tiene sentido
Hay un caso en el que VERDADERO es justo lo que necesitas: las tablas de tramos. Imagina una hoja Descuentos con esta estructura, ya ordenada de menor a mayor:
| A | B | |
|---|---|---|
| 1 | Unidades desde | Descuento |
| 2 | 1 | 0% |
| 3 | 10 | 5% |
| 4 | 50 | 10% |
| 5 | 100 | 15% |
Si en la hoja Pedidos tienes en C2 la cantidad pedida y quieres que BUSCARV te devuelva el descuento que le corresponde:
=BUSCARV(C2;Descuentos!$A$2:$B$5;2;VERDADERO)
Con 8 unidades devuelve 0% (el tramo más cercano por debajo es 1), con 30 devuelve 5% y con 75 devuelve 10%.
Por qué la tabla de búsqueda tiene que estar ordenada de menor a mayor
Con VERDADERO, BUSCARV no busca el valor exacto: se queda con el último valor de la primera columna que sea menor o igual al que le pides. Si desordenas la tabla y pones, por ejemplo, el tramo 100 antes que el 10, BUSCARV devolverá resultados incoherentes: para 30 unidades podría darte 15% en lugar de 5%, porque el "último valor menor o igual" ya no es el del tramo 10.
| Cantidad pedida | Tramo que debería aplicar | Tramo que aplica si la tabla está desordenada |
|---|---|---|
| 8 | 0% (tramo 1) | 0% |
| 30 | 5% (tramo 10) | 15% (tramo 100) |
| 75 | 10% (tramo 50) | 15% (tramo 100) |
Por qué BUSCARV devuelve #N/A y cómo arreglarlo
Los cinco motivos reales por los que BUSCARV falla, sobre la misma hoja de la tienda:
El código no está en la primera columna del rango
Si en Productos el código está en la columna B y la fórmula apunta a Productos!A:D, BUSCARV mira solo en A y no encuentra nada. La solución es mover el rango a B:D (si el código es la primera columna de ese rango) o reordenar la tabla para que el código quede en A.
El rango se desplazó al copiar la fórmula
Si al arrastrar hacia abajo la fórmula pasa de Productos!A2:D7 a Productos!A3:D8, has arrastrado también la fila del rango. El arreglo es seleccionar el rango dentro de la fórmula y pulsar F4 hasta dejarlo como Productos!$A$2:$D$7.
El indicador_columnas pide una columna que no existe
Si tu rango tiene 4 columnas (A:D) y pones 5 en indicador_columnas, Excel devuelve #¡REF!. La columna 5 no existe. Revisa el alto del rango: debería ser de la columna del código a la del precio.
Texto con espacios o tildes que no coincide
Es muy común: en Productos escribes "Lima" y en Pedidos "Lima " con un espacio al final, o al revés. BUSCARV con FALSO no perdona esos detalles. Puedes limpiar la columna con la función ESPACIOS (=ESPACIOS(A2)) antes de la búsqueda, o pasar a BUSCARX si tienes Excel 2021 o Microsoft 365, que ofrece coincidencia exacta más flexible.
El número se busca como texto y viceversa
Si en Productos el código 100 es un número y en Pedidos lo has escrito como texto (con un apóstrofo delante, por ejemplo, o porque viene de un CSV mal importado), BUSCARV no los considera iguales. Conviértelos con VALOR (texto a número) o TEXTO (número a texto) antes de la fórmula, o revisa el formato de la celda en Inicio > Número > Formato.
Envolver BUSCARV en SI.ERROR para que no aparezcan errores
SI.ERROR (en inglés, IFERROR) atrapa el error de BUSCARV y lo sustituye por lo que tú quieras. La fórmula limpia para la hoja Pedidos es:
=SI.ERROR(BUSCARV(A2;Productos!$A$2:$D$7;2;FALSO);"No existe")
- En B2 de Pedidos, sustituye la fórmula anterior por esta.
- Copia hacia abajo hasta B5 con el controlador de relleno.
- En A6 deja el código
P-999que no existe: ahora B6 muestra No existe en lugar de#N/A.
Mostrar un texto, un 0 o una celda vacía cuando no hay coincidencia
El segundo argumento de SI.ERROR es lo que se muestra cuando BUSCARV falla. Estos son los tres más habituales:
| Fórmula | Resultado cuando el código no existe | Cuándo usarlo |
|---|---|---|
=SI.ERROR(BUSCARV(A2;Productos!$A$2:$D$7;2;FALSO);"No existe") |
Texto "No existe" | Informes para imprimir |
=SI.ERROR(BUSCARV(A2;Productos!$A$2:$D$7;4;FALSO);0) |
Número 0 | Hojas de cálculo que se suman |
=SI.ERROR(BUSCARV(A2;Productos!$A$2:$D$7;2;FALSO);"") |
Celda visualmente vacía | Listas y tablas limpias |
Lo que BUSCARV no puede hacer y qué usar en su lugar
BUSCARV tiene tres limitaciones reales que conviene conocer antes de elegir otra herramienta.
Buscar hacia la izquierda o por la columna que tú quieras
BUSCARV solo mira hacia la derecha: la columna del valor buscado tiene que ser la primera del rango. Si necesitas traer un dato que está a la izquierda del código, tienes dos opciones: reordenar la tabla, o usar INDICE + COINCIDIR (que vale en todas las versiones) o BUSCARX (en inglés, XLOOKUP), que está en Excel 2021, 2024 y Microsoft 365 y permite elegir cualquier columna como origen.
Traer más de un dato a la vez con la misma búsqueda
Con BUSCARV, si necesitas nombre, categoría y precio, escribes una fórmula por columna. BUSCARX puede devolver un rango de una vez, y FILTRAR (en Microsoft 365) devuelve, de un solo golpe, todas las filas que coincidan con el código.
Cuando el valor buscado se repite en la tabla
BUSCARV se queda siempre con la primera coincidencia que encuentra. Si el código P-001 aparece tres veces en Productos, solo te trae los datos de la primera fila. Para obtener el último, la combinación INDICE + COINCIDIR con un orden inverso lo resuelve; para obtenerlos todos, FILTRAR en Microsoft 365.
Lo que ya sabes hacer con BUSCARV y el siguiente paso
- BUSCARV busca un valor en la primera columna de un rango y devuelve el dato de otra columna de la misma fila.
- Con
FALSObuscas coincidencia exacta (el caso del 90 % de las hojas); conVERDADERO, coincidencia aproximada por tramos, y la tabla tiene que estar ordenada de menor a mayor. - El rango se fija con F4 (Cmd+T en Mac) para que no se desplace al copiar la fórmula.
- Envolver la fórmula en
SI.ERRORevita los#N/Ay deja la hoja presentable.
El siguiente paso natural es INDICE + COINCIDIR para buscar hacia la izquierda sin reordenar nada, o dar el salto a BUSCARX si tu Excel es 2021, 2024 o Microsoft 365: una sola función que combina lo que hacen BUSCARV, SI.ERROR y la búsqueda flexible en una fórmula más corta.
Dudas al usar BUSCARV en Excel
1. ¿Cómo se usa BUSCARV para buscar un valor en una tabla de precios por modelo de coche?
Crea una tabla con la columna clave a la izquierda (por ejemplo, el modelo) y los datos a la derecha (precio, año, versión). Escribe =BUSCARV("HR-V";A2:D20;2;FALSO) y la fórmula devuelve el precio exacto sin buscarlo a ojo, aunque la tabla tenga cientos de filas. Cambia el 2 por 3 o 4 para traer la versión o el año del modelo.
2. ¿Cómo comparar versiones de un mismo modelo con BUSCARV en una hoja aparte?
En una hoja nueva escribe los encabezados que quieres consultar (modelo, año, precio). Con =BUSCARV(A2;Hoja1!$A$2:$D$50;3;FALSO) traes el precio de cada versión desde la hoja de datos al rango, usando referencias absolutas para no perder la tabla al copiar hacia abajo. Así tienes una ficha comparativa sin reescribir nada a mano.
3. ¿Qué hago si BUSCARV me devuelve el modelo equivocado al buscar un coche?
Revisa que la columna clave (modelo) sea la PRIMERA del rango, ya que BUSCARV solo mira hacia la derecha desde esa columna. Si tu clave está más a la derecha, BUSCARV no la encuentra: ordénala primero o pasa a BUSCARX (XLOOKUP), disponible desde Excel 2021 y Microsoft 365, que sí busca en cualquier dirección.