Descripción
Utiliza esta función para buscar un valor en la primera columna de un rango de tabla y devolver un valor en la misma fila de otra columna especificada. Compatible con cadenas.
VLOOKUP es útil para buscar información en grandes conjuntos de datos, como buscar precios en un catálogo de productos o encontrar datos de empleados en una base de datos.
Sintaxis
VLOOKUP(valor_consulta, matriz_tabla, número_índice_col, [rango_consulta])
Entradas
Esta función acepta los siguientes argumentos:
| Nombre | Obligatorio | Descripción | Entrada válida |
|---|---|---|---|
valor_buscado |
Sí | El valor a buscar en la primera columna de la matriz de tablas. | Una referencia de celda, un rango de celdas, un número, una cadena de texto o una fórmula que dé como resultado cualquiera de ellos. |
tabla_array |
Sí | La tabla de información en la que se buscan los datos. | Un rango de celdas. |
número_índice_col |
Sí | El número de columna en table_array desde el que debe devolverse el valor coincidente. |
Un número entero positivo, una referencia de celda que contenga un número entero positivo o una fórmula que dé como resultado cualquiera de ellos. 1 = la primera columna de table_array. |
búsqueda_de_rango |
Ninguno | Especifica si quieres que VLOOKUP encuentre una coincidencia exacta o aproximada. | TRUE (por defecto) para una coincidencia aproximada, FALSE para una coincidencia exacta. |
Ejemplo
Datos de muestra
| Un | B | C | D | |
|---|---|---|---|---|
| 1 | ID del producto | Nombre del producto | Categoría | Precio |
| 2 | 1001 | Widget A | Gadgets | $10.99 |
| 3 | 1002 | Widget B | Gadgets | $15.99 |
| 4 | 1003 | Gizmo X | Componentes electrónicos | $25.50 |
| 5 | 1004 | Gizmo Y | Componentes electrónicos | $30.00 |
| 6 | 1005 | Gizmo Z | Componentes electrónicos | $37.50 |
Ejemplos de fórmulas
| Caso práctico | Fórmula | Explicación y resultado |
|---|---|---|
| Busca el ID de un producto para encontrar su nombre correspondiente con una coincidencia exacta. | =VLOOKUP(1002, A2:D6, 2, FALSE) |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve Widget B. |
| Busca el ID de un producto para encontrar su precio correspondiente con una coincidencia exacta. | =VLOOKUP(1003, A2:D6, 4, FALSE) |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve $25.50. |
| Busca el nombre de un producto para encontrar su categoría correspondiente con una coincidencia exacta. | =VLOOKUP("Gizmo X", B2:D6, 2, FALSE) |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve Electrónica. |
| Busca un valor aproximado y devuelve el valor desde la fila correspondiente. | =VLOOKUP(1006, A2:D6, 2, VERDADERO) |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve Gizmo Z. |
Busca el ID de un producto con el argumento range_lookup omitido, que Predetermina como una coincidencia aproximada. |
=VLOOKUP(1002, A2:D6, 2) |
Esta fórmula funciona de la siguiente manera:
Para este conjunto de datos, la fórmula devuelve Widget B. |
Notas
- El valor de búsqueda debe estar en la primera columna de la
tabla_arraypara que VLOOKUP funcione correctamente. - Si
range_lookupes TRUE o se omite, la primera columna detable_arraydebe ordenarse en orden ascendente. - Si
range_lookupes FALSE y no se encuentra el lookup_value, VLOOKUP devuelve #N/A error. - VLOOKUP no distingue entre mayúsculas y minúsculas al comparar valores de texto.
- Para obtener un mejor rendimiento con conjuntos de datos grandes, considera la posibilidad de utilizar las funciones INDEX y MATCH en lugar de VLOOKUP.
Recomendaciones
- Utiliza FALSE para
range_lookupcuando necesites una coincidencia exacta, especialmente con datos desordenados o valores de texto. - Combina VLOOKUP con otras funciones como IFERROR para tratar los casos en los que no se encuentra el valor de búsqueda.
- Para búsquedas inversas o cuando tu columna de búsqueda no sea la situada más a la izquierda, considera la posibilidad de utilizar INDEX y MATCH en su lugar.
- Cuando trabajes con conjuntos de datos grandes, utilizar VLOOKUP con
range_lookupestablecido en TRUE puede mejorar el rendimiento si tus datos están ordenados. - Recuerda que VLOOKUP solo puede devolver valores de las columnas situadas a la derecha de la columna de búsqueda en la
tabla_array.