Home

Explicación de VLOOKUP en Google Sheets: Cómo buscar datos verticalmente en hojas de cálculo

¿Cómo conocer el estado de tu vuelo en el tablero de vuelos del aeropuerto? En primer lugar, realiza una búsqueda vertical para encontrar el número de vuelo necesario, por ejemplo, AC5704. Una vez hecho esto, desplaza la mirada hacia la derecha para encontrar el valor correspondiente en la columna Estado.

Lógica de la función VLOOKUP

La función VLOOKUP de las Hojas de cálculo de Google funciona de forma similar, ya que busca verticalmente el valor especificado y devuelve los datos coincidentes de la fila. Lee este tutorial para explorar las capacidades básicas y avanzadas de VLOOKUP.

Entendiendo la búsqueda vertical o VLOOKUP en Google Sheets para principiantes

Sintaxis de la fórmula VLOOKUP

=VLOOKUP(clave de búsqueda, rango, índice-columna, [ordenado/no ordenado])
  • search-key – especifica lo que vas a buscar. Puede ser una cadena de texto ("Texto"), un número (5), una fecha (2020-01-02) o una referencia de celda (A2). El texto a buscar debe introducirse sólo entre comillas.
  • rango – especifica el rango de datos a buscar. 
  • índice-columna – especifica el número de la columna en el rango de búsqueda del que se devolverá el valor coincidente. El índice de la primera columna del rango es siempre 1.
  • [ordenado/no ordenado] – especifica si la columna de búsqueda está ordenada de la A a la Z (TRUE) o no (FALSE). Es un parámetro opcional, con TRUE como valor por defecto.

VLOOKUP siempre devuelve el primer valor encontrado, aunque la columna de búsqueda contenga dos o más valores que coincidan con la clave de búsqueda.

Cómo utilizar VLOOKUP en Hojas de cálculo de Google: ejemplo de fórmula

Extraigamos el precio del Club Sandwich del siguiente conjunto de datos.

Ejemplo de conjunto de datos importado de Airtable

Aquí está la fórmula VLOOKUP para hacer esto:

={"Club Sandwich",vlookup(A9,A2:E11,5,false)}

  • {"Club Sandwich"...} – esto añadirá el nombre (Club Sandwich) a la celda a la izquierda del valor devuelto por la fórmula VLOOKUP
  • A9 – la clave de búsqueda que estamos buscando
  • A2:E11 – el intervalo de datos 
  • 5 – el número de columna del intervalo de datos a buscar
  • false – la columna de búsqueda no está ordenada
vlookup google sheets ejemplo

Eso es lo básico. Ahora vamos a profundizar en cómo se puede utilizar VLOOKUP.

Función VLOOKUP en Hojas de cálculo de Google – Hoja de trucos

Si no eres un novato en VLOOKUP y simplemente necesitas refrescar tus conocimientos, echa un vistazo a la siguiente hoja de trucos de VLOOKUP.

Hoja de trucos VLOOKUP

Hoja de trucos de VLOOKUP en Google Sheets

Cómo hacer VLOOKUP en Google Sheets – tutorial con ejemplos

Antes de empezar a explorar la función VLOOKUP en Hojas de cálculo de Google, vamos a cargar algunos datos de ejemplo en nuestra hoja de cálculo. A continuación, utilizaremos estos datos para la demostración.

  • Para cargar datos en una hoja de cálculo, hemos utilizado una de las integraciones de Google Sheets proporcionadas por Coupler.io. Se trata de una práctica plataforma para importar datos a Google Sheets, Excel, BigQuery y Looker Studio. Puede extraer datos de más de 60 aplicaciones diferentes, como Airtable, Pipedrive, QuickBooks y muchas otras. La plataforma permite combinar datos de diferentes fuentes, transformarlos y llevarlos al destino deseado de forma totalmente automatizada, en el horario que elija. Además, no se requieren conocimientos técnicos para crear estas automatizaciones, por lo que cualquiera puede hacerlo. 
  • Consulta la lista completa de fuentes de datos que puedes exportar a Google Sheets. Sin duda, te recomendamos que lo pruebes, ya que facilita enormemente el trabajo con Google Sheets.

Para exportar datos, regístrate con tu cuenta de Google; esto lleva literalmente unos segundos. A continuación, selecciona la app de la que quieres extraer datos, elige Google Sheets como destino y configura una conexión automatizada siguiendo más instrucciones.

  • Si necesitas más detalles al respecto, puedes consultar esta guía.
  • En unos minutos, el conjunto de datos se habrá importado a Google Sheets y estaremos listos para sumergirnos en los detalles del uso de la función VLOOKUP.

1. Cómo buscar en VLOOKUP la coincidencia exacta o más cercana

  • Para una coincidencia exacta, especifica FALSE como parámetro [ordenado/no ordenado]. Es el valor recomendado.
  • Para obtener la coincidencia más cercana, especifica TRUE como parámetro [ordenado/no ordenado].

1.1 Lógica de VLOOKUP con TRUE (parámetro ordenado) para encontrar la coincidencia más cercana

Si especificas TRUE como último parámetro en su fórmula VLOOKUP, buscará primero la coincidencia exacta. Si falla, la fórmula buscará celda por celda la coincidencia más cercana que sea menor o igual que la clave de búsqueda. Si la clave de búsqueda es menor que el valor de la primera celda a buscar, la fórmula devolverá un #N/A Error: No se encontró el valor '***' en la evaluación VLOOKUP.

vlookup closest match logic

2. Cómo hacer VLOOKUP para una coincidencia parcial utilizando comodines

Puedes utilizar los siguientes comodines con tu clave de búsqueda en la fórmula VLOOKUP:

  • Asterisco (*) para sustituir a cualquier número de caracteres.
  • Signo de interrogación (?) para sustituir a cualquier carácter.
  • Signo de virgulilla (~) delante de un asterisco (*) o un signo de interrogación (?) para tratarlos como signos simples. Por ejemplo, “~**” significa que buscas los valores que empiezan por un asterisco “*”.

En nuestra entrada del blog sobre las funciones COUNTIF y COUNTIFS ya hemos explicado cómo funcionan los comodines. Veámoslo a través de un ejemplo práctico, cuando una clave de búsqueda empieza, termina o contiene un texto específico.

En nuestro conjunto de datos de bocadillos, necesitamos encontrar la descripción del producto que contiene “cake” en su nombre. Así es como debería ser la clave de búsqueda: "*cake*". Y aquí está la fórmula VLOOKUP:

=vlookup("*cake*",A2:E,4,false)

vlookup coincidencia parcial

Como esperábamos, la fórmula devolvía la descripción de Bocadillo de cangrejo. De forma similar, puede buscar verticalmente criterios que empiecen o terminen con un texto determinado.

3. Google Sheets VLOOKUP múltiples columnas

Digamos que la celda A15 contiene “jucy”, y la celda B15 contiene “lucy”. Necesitamos utilizar los valores de estas celdas como clave de búsqueda(“jucy lucy“) en la fórmula VLOOKUP. Para ello, puedes combinar las celdas utilizando el ampersand (&) de la siguiente manera: A1&" "&B1

Ahora puede anidar esta fórmula con VLOOKUP:

=vlookup(A15&" "&B15,A2:E,4,false)

columnas múltiples

Nota: Más información sobre la fusión de celdas en Google Sheets.

4. Google Sheets VLOOKUP múltiples valores

Si deseas realizar un vlookup de varios valores, deberás utilizar dos o más fórmulas entre llaves, como se indica a continuación: ésta es la sintaxis que necesitas:

={VLOOKUP(clave de búsqueda, rango, columna-índice-1, [ordenado/no ordenado]),VLOOKUP(clave de búsqueda, rango, columna-índice-2, [ordenado/no ordenado]),...}

Nota: Utiliza una coma para separar las fórmulas VLOOKUP para devolver los valores en una fila; utiliza el punto y coma para devolver los valores en una columna.

Por ejemplo, hagamos un vlookup de la clave de búsqueda (“jucy lucy“) para obtener no sólo la descripción, sino también el precio. Ésta es la fórmula:

={vlookup("jucy lucy",A2:E,4,false);
vlookup("jucy lucy",A2:E,5,false)}

vlookup valores múltiples

5. Google Sheets VLOOKUP otra hoja o varias hojas

No hay ningún problema en utilizar VLOOKUP para realizar búsquedas verticales en varias pestañas de la hoja de cálculo. Para ello, es necesario enumerar los rangos de las hojas utilizando llaves en el parámetro rango. Los rangos deben estar separados por punto y coma, como sigue:

=VLOOKUP(clave-búsqueda, {rango-hoja1;rango-hoja2;rango-hoja3...}, índice-columna, [ordenado/no ordenado])

Por ejemplo, puedes tener tus datos repartidos en tres hojas: Productos1, Productos2 y Productos3.  

Busquemos la descripción del producto cuyo nombre contiene “lucy”. Aquí está la fórmula VLOOKUP:

=vlookup("*lucy*",{Productos1!A2:E;Productos2!A2:E;Productos3!A2:E},4,false)

VLOOKUP en varias hojas

6. Cómo hacer un VLOOKUP que distinga entre mayúsculas y minúsculas: QUERY y VLOOKUP

VLOOKUP no distingue entre valores en mayúsculas y minúsculas. Así, con la clave de búsqueda “cheeseburger“, la fórmula devolverá el valor que coincida con “Cheeseburger”, ya que es la primera coincidencia al buscar:

={"cheeseburger",vlookup("cheeseburger",A2:E12,5,false)}

vlookup sensible a mayúsculas y minúsculas

Puedes resolver este problema anidando VLOOKUP con QUERY, ya que la función QUERY distingue entre mayúsculas y minúsculas. La siguiente fórmula filtrará “cheeseburger” del rango de datos A2:E12:

=query(A2:E12, "select * where A='cheeseburger'")

vlookup sensible a mayúsculas y minúsculas

Anida esta fórmula QUERY con la fórmula VLOOKUP para realizar una búsqueda que distinga entre mayúsculas y minúsculas:

={
"cheeseburger",
vlookup(
"cheeseburger",
query(A2:E12, "select * where A='cheeseburger'"),
5,
falso
)
}

vlookup sensible a mayúsculas y minúsculas

Nota: Lee la entrada de nuestro blog para obtener más información sobre la potencia de la función de consulta de Google Sheets.

7. Google Sheets VLOOKUP criterios múltiples

Para vlookup dos o más claves de búsqueda, anidar VLOOKUP con ARRAYFORMULA como sigue:

=ARRAYFORMULA(VLOOKUP({búsqueda-clave#1;búsqueda-clave#2;...}, rango, columna-índice, [ordenado/no ordenado])

Esto devolverá los resultados del vlookup en una columna. Si deseas devolver los resultados en una fila, sustituye el punto y coma por comas entre las claves de búsqueda.

=ARRAYFORMULA(VLOOKUP({clave-búsqueda#1,clave-búsqueda#2,...}, rango, índice-columna, [ordenado/no ordenado])

Por ejemplo, busquemos verticalmente el precio de “Veggie burger“, “Club sandwich” e “Italian beef“:

=arrayformula(
vlookup(
{Productos!A2;Productos!A9;Productos!A6},
Productos! A2:E12,
5,
falso
)
)

vlookup criterios múltiples

8. Google Sheets ARRAYFORMULA VLOOKUP en un rango

De forma similar, puedes buscar un intervalo de datos:

=ARRAYFORMULA(VLOOKUP(rango-datos-búsqueda, rango, índice-columna, [ordenado/no ordenado])

Por ejemplo, busquemos el rango A2:A6:

=arrayformula(vlookup(A2:A6,A2:E12, 5,false))

vlookup en un rango

9. Cómo hacer VLOOKUP a una fila entera o a varios valores: ARRAYFORMULA y VLOOKUP

Anida VLOOKUP con ARRAYFORMULA y especifica los índices de las columnas de las que deseas extraer datos. 

=ARRAYFORMULA(VLOOKUP(clave de búsqueda, rango, {índice-columna#1,índice-columna#2,...}, [ordenado/no ordenado])

Si deseas devolver los resultados en una columna, sustituye las comas por punto y coma entre los índices de columna.

=ARRAYFORMULA(VLOOKUP(clave de búsqueda, rango, {índice-columna#1;índice-columna#2;...}, [ordenado/no ordenado])

Por ejemplo, vamos a extraer toda la fila de “Denver sandwich“:

=arrayformula(vlookup(Productos!A8,Productos!A2:E,{1;2;3;4;5}, false))

vlookup fila entera

Si la fila es mucho más larga, deberás utilizar la función COLUMNA en el parámetro índice-columna.

=ARRAYFORMULA(VLOOKUP(search-key, range, COLUMN(data-range), [sorted/not-sorted])

Nota: especifica el rango de datos dentro de la función COLUMNA excluyendo la última columna con datos. Por ejemplo, tu rango de datos es A2:D. Su función VLOOKUP debe contener COLUMN (A2:C), de lo contrario devolverá un Error - VLOOKUP evalúa a un rango fuera de límites

Error VLOOKUP fuera de rango

10. Cómo hacer VLOOKUP a la izquierda

La función VLOOKUP funciona en dos direcciones:

  1. De arriba abajo
  2. De izquierda a derecha

Si necesitas buscar una columna a la izquierda, hay una solución:

=VLOOKUP(clave-búsqueda, {columna-búsqueda,rango-dos-columnas-búsqueda}, índice-columna, [ordenado/no ordenado])

He aquí algunas peculiaridades que conviene conocer:

  • columna-de-búsqueda – especifica la columna a buscar.
  • range-wo-lookup-column – especifica el rango de datos excluyendo la columna a buscar. 
  • índice-columna – el número de la columna consultada del rango-dos-columnas-de-consulta de la que se devolverá el valor coincidente. El índice de la primera columna del rango-dos-columnas-de-búsqueda es siempre 2.

Por ejemplo, necesitamos buscar en la columna Precio el valor “11” y conocer el nombre del Producto que coincide con él. Así es como se verá la fórmula:

=vlookup(11,{E2:E,A2:D},2,false)

vlookup a la izquierda

11. VLOOKUP de abajo a arriba en Google Sheets

Normalmente, VLOOKUP busca de arriba hacia abajo, pero ¿qué ocurre si necesitamos invertir esta dirección?
Supongamos que tenemos dos artículos llamados “Bocadillo de salchicha” en nuestro conjunto de datos. Se diferencian en el precio y necesitamos obtenerlo para el que está más cerca de la parte inferior.

vlookup de abajo a arriba

Así que, básicamente, necesitas voltear tu rango de datos. Puedes hacerlo con la siguiente fórmula:

=SORT({rango de datos},ROW({primera-columna-dentro-delrango})*N({última-columna-dentro-delrango}<>""),0)

En nuestro caso, es el siguiente:

=SORT(A2:E13,ROW(A2:A13)*N(E2:E13<>""),0)

rango de datos de flip

Ahora puedes hacer el vlookup normal 🙂 Sin embargo, la forma más avanzada es mejor esta fórmula en su fórmula VLOOKUP de la siguiente manera:

=VLOOKUP(clave-búsqueda,SORT({rango-datos},ROW({primera-columna-dentro-del-rango})*N({última-columna-dentro-del-rango}<>""),0), índice-columna, [ordenado/no ordenado].

En nuestro ejemplo, el aspecto es el siguiente

=VLOOKUP("Bocadillo de chorizo",SORT(A2:E13,ROW(A2:A13)*N(E2:E13<>""),0),5,false)

vlookup de abajo a arriba

12. Cómo hacer una búsqueda horizontal: función HLOOKUP

HLOOKUP es la hermana o hermano menor de VLOOKUP. Incluso tienen una sintaxis de fórmula similar. La diferencia es que VLOOKUP busca primero verticalmente y luego horizontalmente; HLOOKUP busca primero horizontalmente y luego verticalmente. La función busca la clave de búsqueda en la primera fila del intervalo de datos y, a continuación, devuelve el valor de la fila especificada.

Diferencia entre VLOOKUP y HLOOKUP

Sintaxis de la fórmula HLOOKUP:

=HLOOKUP(clave de búsqueda, rango, índice-fila, [ordenado/no ordenado])

  • rango – especifica el rango de datos en cualquier hoja para buscar. HLOOKUP busca la clave de búsqueda en la primera fila del rango.
  • row-index – el número de la fila buscada del rango del que se devolverá el valor coincidente. El índice de la primera fila del rango es siempre 1.

Esta función funciona bien con conjuntos de datos de rango grande. Por ejemplo, busquemos el precio del artículo especificado en la quinta fila.

=hlookup("Precio",A1:E,5,false)

ejemplo de hlookup

13. Cómo hacer VLOOKUP desde otra hoja de cálculo: VLOOKUP e IMPORTRANGE

VLOOKUP funciona dentro de un documento de Google Sheets. Si necesitas buscar un conjunto de datos en otra hoja de cálculo, anida VLOOKUP e IMPORTRANGE. 

13.1. VLOOKUP IMPORTRANGE Sintaxis:

=VLOOKUP(clave de búsqueda, IMPORTRANGE("ID_hoja_de_datos", "rango_datos"), índice_columna, [ordenado/no ordenado])

Todo permanece como está excepto el rango – necesitas reemplazarlo con la fórmula IMPORTRANGE. Consulta el ejemplo de fórmula VLOOKUP e IMPORTRANGE, así como otras capacidades de IMPORTRANGE en nuestra entrada de blog.

14. IF y VLOOKUP

Para personalizar el resultado de tu fórmula VLOOKUP, puedes anidar VLOOKUP e IF de forma diferente. Por ejemplo, esta es la fórmula que utilizamos en la entrada del blog “Campos personalizados de Trello en Google Sheets“:

={"Tipo de campo personalizado", "Nombre de campo personalizado";
ARRAYFORMULA(IF(LEN('Todos los campos personalizados por tarjetas'!E2:E)=0,,
VLOOKUP(
Todos los campos personalizados por tarjetas" E2:E,
{'Todos los campos personalizados'!A2:A, 'Todos los campos personalizados'!H2:H, 'Todos los campos personalizados'!F2:F},
{2,3},false
)
)
)
}

La combinación de ARRAYFORMULA, IF y VLOOKUP nos permitió asignar tipos de campos personalizados por tarjetas.

IF, LEN en la fórmula es un truco que permite desactivar ARRAYFORMULA+VLOOKUP para celdas vacías. Sin este truco, la fórmula habría funcionado con todas las filas y habría devuelto #N/A para las celdas vacías.

Y así es como puedes anidar la lógica IF dentro de la fórmula VLOOKUP:

Supongamos que tenemos dos conjuntos de datos:

  1. Productos y sus precios ahora
  2. Productos y sus precios en 2019

Necesitamos buscar el precio de “Italian beef” en función del año especificado en la celda B1. He aquí la fórmula VLOOKUP+IF:

=vlookup(
"italian beef",
if(B1=2019, 'Productos 2019'!A2:E11, Productos!A2:E11),
5,
falso
)

La idea es que, si la celda B1 contiene 2019, la fórmula VLOOKUP devolverá el precio de Italian Beef en 2019. De lo contrario, devolverá el precio actual del producto.

Ejemplo de fórmula VLOOKUP e IF

Para terminar: ¿hay alguna alternativa a VLOOKUP? 

La combinación de INDEX y MATCH se considera una alternativa mejor que VLOOKUP. Son funciones de búsqueda de Google Sheets, es decir, devuelven el valor basándose en una clave de búsqueda o en un número de desplazamiento:

  • INDEX devuelve el valor de la celda en función de una fila y una columna especificadas

INDEX(rango, desplazamiento-fila, índice-columna)

  • MATCH devuelve la posición de una clave de búsqueda en un rango especificado (una sola columna o una sola fila)

MATCH(clave de búsqueda, rango, [tipo de búsqueda])

Para utilizar la combinación de INDEX y MATCH en lugar de VLOOKUP, debes sustituir row-offset o column-index, o ambos, por la fórmula MATCH. Puede tener el siguiente aspecto:

INDEX(rango, MATCH(clave de búsqueda, rango, [tipo de búsqueda]), índice-columna)

INDEX(rango, fila-desplazamiento, MATCH(clave-de-búsqueda, rango, [tipo-de-búsqueda]))

O

INDEX(rango, MATCH(clave de búsqueda, rango, [tipo de búsqueda]), MATCH(clave de búsqueda, rango, [tipo de búsqueda]))

Si necesitas exportar datos de algún sitio a una hoja de cálculo, echa un vistazo a las integraciones de Google Sheets y Excel que proporciona Coupler.io. Por ahora, utiliza Vlookup de forma segura y agiliza tus actividades centradas en los datos. Mucha suerte.