Lección 6 de 16 · Nivel 2: Intermedio
BUSCARV y BUSCARX: cómo buscar datos entre tablas
- ⏱ 7 min de lectura
- ❓ 3 preguntas de repaso
- ✍️ Ejercicio con solución
- 📥 Plantilla descargable
En esta lección
- Buscar datos en otra tabla con BUSCARV paso a paso.
- Usar BUSCARX y la combinación INDICE + COINCIDIR.
- Buscar por tramos con coincidencia aproximada.
- Resolver los #N/D que aparecen aunque el dato esté ahí.
Busca productos y precios, e incluye un código que no existe.
- practica-excel.xlsx · hojas Catálogo y Buscar
Buscar un dato en otra tabla es, junto con la tabla dinámica, la habilidad de Excel que más se pide en entrevistas de trabajo. Con BUSCARV y su sucesor BUSCARX puedes traer el precio de un producto a partir de su código, el nombre de un cliente a partir de su número de documento o la comisión que corresponde a un monto de ventas.
El caso típico
Tienes una hoja Productos con el catálogo:
| A | B | C | |
|---|---|---|---|
| 1 | Código | Descripción | Precio |
| 2 | P-001 | Silla ergonómica | 189 |
| 3 | P-002 | Escritorio | 245 |
| 4 | P-003 | Lámpara LED | 39 |
Y en otra hoja Pedidos solo registras el código y la cantidad. Quieres que la descripción y el precio aparezcan solos.
BUSCARV paso a paso
=BUSCARV(valor_buscado; matriz; número_de_columna; FALSO)
- Valor buscado: lo que conoces (el código del pedido, por ejemplo
A2). - Matriz: la tabla donde buscar. El valor buscado tiene que estar en la primera columna de este rango.
- Número de columna: qué columna de la matriz quieres devolver, contando desde 1.
- FALSO: coincidencia exacta. Casi siempre querrás esto.
Descripción: =BUSCARV(A2; Productos!$A$2:$C$500; 2; FALSO)
Precio: =BUSCARV(A2; Productos!$A$2:$C$500; 3; FALSO)
Observa los $: la matriz debe quedar fija para que, al copiar la fórmula hacia abajo, no se desplace (lección 3). Si el catálogo es una tabla de Excel llamada Productos, es aún más simple: =BUSCARV(A2; Productos; 3; FALSO).
Si omites el cuarto argumento, BUSCARV asume VERDADERO (coincidencia aproximada) y puede devolver el precio de otro producto sin mostrar ningún error. Escribe siempre FALSO (o 0) cuando busques códigos, nombres o documentos.
Las tres limitaciones de BUSCARV
- Solo busca hacia la derecha: no puede devolver una columna que esté a la izquierda de la columna de búsqueda.
- El número de columna está "escrito a mano": si alguien inserta una columna en el catálogo, la fórmula devuelve el dato equivocado.
- Cuando no encuentra el valor devuelve
#N/Dy hay que envolverlo enSI.ERROR.
1. ¿Qué indica el último argumento, FALSO, en =BUSCARV(A2;Productos!$A$2:$D$200;3;FALSO)?
FALSO pide coincidencia exacta, lo que necesitas para códigos, nombres o documentos. VERDADERO es para tramos con la tabla ordenada.
BUSCARX: la versión moderna
Disponible en Microsoft 365, Excel 2021 y posteriores, y en Google Sheets (XLOOKUP). Resuelve las tres limitaciones:
=BUSCARX(valor_buscado; columna_donde_buscar; columna_a_devolver; [si_no_se_encuentra])
=BUSCARX(A2; Productos!A:A; Productos!C:C; "Código inexistente")
- Indicas la columna a devolver directamente, sin contar números.
- Puede devolver columnas a la izquierda.
- Tiene coincidencia exacta por defecto.
- Incluye el mensaje para cuando no encuentra nada, sin SI.ERROR.
Además, puede devolver varias columnas a la vez: =BUSCARX(A2; Productos!A:A; Productos!B:C) rellena la descripción y el precio en dos celdas contiguas.
Si tú y las personas con quienes compartes el archivo tienen Microsoft 365 o Excel 2021+, usa BUSCARX. Si el archivo lo abrirá alguien con Excel 2016 o 2019, usa BUSCARV (o INDICE+COINCIDIR), porque BUSCARX dará #¿NOMBRE? en esas versiones.
2. ¿Qué limitación de BUSCARV resuelve BUSCARX?
BUSCARV siempre busca en la primera columna y devuelve columnas a la derecha. BUSCARX usa rangos separados de búsqueda y resultado, en cualquier dirección.
INDICE + COINCIDIR: la combinación clásica
Antes de BUSCARX, los usuarios avanzados combinaban dos funciones para buscar en cualquier dirección. Funciona en todas las versiones:
=INDICE(Productos!C:C; COINCIDIR(A2; Productos!A:A; 0))
COINCIDIR encuentra la posición (fila) del código, e INDICE devuelve lo que hay en esa posición de la columna de precios. El 0 final de COINCIDIR significa coincidencia exacta.
Búsqueda aproximada: tramos y escalas
La coincidencia aproximada tiene un uso legítimo y muy potente: asignar tramos. Imagina una escala de comisiones:
| H | I | |
|---|---|---|
| 1 | Desde | Comisión |
| 2 | 0 | 2% |
| 3 | 5.000 | 4% |
| 4 | 15.000 | 6% |
| 5 | 30.000 | 8% |
=BUSCARV(B2; $H$2:$I$5; 2; VERDADERO)
Para una venta de 18.400, Excel busca el mayor valor "Desde" que no supere 18.400 (es decir, 15.000) y devuelve 6%. Requisito: la primera columna debe estar ordenada de menor a mayor. Con BUSCARX: =BUSCARX(B2; H2:H5; I2:I5; ; -1), donde -1 significa "coincidencia exacta o el siguiente menor".
Esto reemplaza a un SI anidado de cuatro niveles y, si mañana cambian los tramos, solo editas la tabla.
Por qué aparece #N/D aunque "el dato está ahí"
- Espacios invisibles:
"P-001 "no es igual a"P-001". Límpialos con=ESPACIOS(A2). - Número contra texto: el código 1050 guardado como número no coincide con "1050" guardado como texto. Revisa la alineación de ambas columnas.
- Matriz que se desplazó: olvidaste los
$y, al copiar, el rango dejó fuera las primeras filas. - Columna equivocada: en BUSCARV, el valor buscado no está en la primera columna de la matriz.
3. El código "A-105" está en las dos tablas, pero BUSCARV devuelve #N/D. ¿Cuál es la causa más probable?
La mayoría de los #N/D "inexplicables" se deben a espacios sobrantes o a diferencias de tipo entre número y texto. ESPACIOS y VALOR ayudan a corregirlos.
Ejercicio práctico
Crea una hoja Productos con 6 productos (Código, Descripción, Precio) y otra hoja Pedidos con columnas Código, Cantidad, Descripción, Precio e Importe.
- Rellena Descripción y Precio con BUSCARV o BUSCARX.
- Calcula el Importe.
- Escribe un código que no exista y haz que aparezca "Revisar código" en lugar de #N/D.
Ver solución
Descripción: =SI.ERROR(BUSCARV($A2; Productos!$A$2:$C$7; 2; FALSO); "Revisar código")
Precio: =SI.ERROR(BUSCARV($A2; Productos!$A$2:$C$7; 3; FALSO); 0)
Importe: =B2*D2
Con BUSCARX:
Descripción: =BUSCARX($A2; Productos!$A$2:$A$7; Productos!$B$2:$B$7; "Revisar código")
Resumen
BUSCARV: valor, matriz fija, número de columna y FALSO.BUSCARXes más flexible y seguro, pero requiere Excel 2021 o Microsoft 365.- La coincidencia aproximada sirve para tramos, con la tabla ordenada de menor a mayor.
- La mayoría de los
#N/Dse deben a espacios o a números guardados como texto.
En la próxima lección: SUMAR.SI.CONJUNTO, CONTAR.SI y funciones de texto y fecha. Verás sumar y contar con varias condiciones, criterios con fechas, limpiar textos y calcular con fechas.
Crea tu cuenta en 30 segundos, marca tus lecciones y descarga el certificado al terminar.