Cómo utilizar la nueva función XLOOKUP en Google Sheets (Nueva 2022)
La función XLOOKUP en Google Sheets permite realizar la búsqueda de un valor en un rango especifico de filas o columnas y devuelve el valor de la coincidencia en función a la posición en la que se la haya encontrado. En caso de no existir coincidencias exactas, puede devolver el valor que más se aproxime.
XLOOKUP es una nueva función de Google Sheets que fué lanzada en agosto de 2022. Una de sus principales características, además de tener diferentes opciones de configuración avanzada, es que puede realizar la búsqueda en rangos horizontales o verticales, lo que la hace más flexible y más fácil de utilizar en relación a sus predecesoras BUSCARV (VLOOKUP) y BUSCARH (HLOOKUP).
Tabla de contenido
1. Principales beneficios
- Permite la búsqueda tanto horizontal como vertical.
- A diferencia de BUSCARV y BUSCARH, se pueden realizar búsquedas hacia arriba y hacia la izquierda.
- Búsqueda con múltiples criterios.
- Puede devolver como resultado varios valores de una columna o fila entera.
- Tiene la capacidad de ejecutar coincidencias exactas o aproximadas.
- Permite el uso de comodines (*~?) para coincidencias parciales.
- Puede realizar la búsqueda desde el primer valor al último y viceversa.
2. Sintaxis para la versión de XLOOKUP en español
Por el momento, el nombre de esta función puede ser utilizada en cualquier versión de idioma de Google Sheets. En caso que se defina otro nombre para la versión de XLOOKUP en español, actualizaremos este post.
=XLOOKUP(valor_búsqueda; intervalo_búsqueda; intervalo_resultado; [valor_no_encontrado]; [modo_coincidencia]; [modo_búsqueda])
NOTA: En la versión en español de Google Sheets el signo que separa los argumentos de la Sintaxis es el punto y coma (;)
Argumentos requeridos
- valor_búsqueda: Valor que queremos buscar.
- intervalo_búsqueda: Intervalo (rango) de la búsqueda. Solo puede ser una fila o columna.
- intervalo_resultado: Intervalo(rango) que se debe considerar para el resultado. En función a como se realice la búsqueda, el tamaño de la fila o columna de este intervalo debe ser, necesariamente, igual al de intervalo_búsqueda.
Argumentos opcionales
- [valor_no_encontrado]: Es el valor que elegimos devolver si no existen coincidencias (Ej. “Sin coincidencias”). En caso de ser omitido, por defecto, saldrá un mensaje de error.
- [modo_coincidencia]: Permite especificar el tipo de coincidencia que deseamos utilizar para buscar valor_búsqueda.
- 0, corresponde a una coincidencia exacta (opción por defecto)
- -1, busca la coincidencia exacta o el siguiente valor que sea menor al valor_busqueda
- 1, busca la coincidencia exacta o el siguiente valor que sea mayor al valor_busqueda
- 2, Permite ejecutar coincidencias parciales con caracteres que hacen de comodín, como ser, estrella (*) o tilde (~)
- [modo_búsqueda]: Define como se encontrará el valor en el intervalo_búsqueda
- -1, búsqueda desde la última entrada hasta la primera (opción por defecto)
- 1, búsqueda desde la primera entrada hasta la última
- 2, búsqueda binaria asumiendo que el rango esta ordenado en forma ascendente
- -2, búsqueda binaria asumiendo que el rango esta ordenado en forma descendente
3. Ejemplos y aplicaciones de la función XLOOKUP en Google Sheets
Como ejemplo, tenemos una tabla similar a “LISTA DE AMIGOS” utilizada anteriormente en el post de BUSCARV. Esta tiene un listado de nuestros mejores amigos, ciudad de residencia, cantidad de familiares (aparte de ellos) y el número de teléfono. Estamos preparando una celebración y queremos contactarlos para invitarlos y saber con cuantos familiares vendrán.
Ejemplo #1. Coincidencia exacta
Aplicación básica
En nuestro primer ejemplo, al introducir el nombre completo de nuestro amigo (tal cual aparece en la Columna A), queremos obtener su número telefónico. Para ello:
- Nos situamos en la celda donde queremos obtener el resultado. Para nuestro ejemplo, la Celda G3.
- Luego, escribimos la formula: =XLOOKUP(G2;A3:A13;D3:D13) donde:
- G2 corresponde al valor_búsqueda
- A3:A13 es el rango sobre el cual se realizará la búsqueda (intervalo_búsqueda)
- D3:D13 es el rango de donde se extraerá, si existiera, la coincidencia (intervalo_resultado)
En la siguiente imagen, observamos el resultado final de aplicar la función XLOOKUP en Google Sheets:
Múltiples resultados
En caso de requerir más datos como resultado, la función XLOOKUP en Google Sheets permite ampliar el intervalo_resultado y devolver más de un resultado.
En nuestro ejemplo, ampliamos el intervalo_resultado a C3:D13. De esta manera, el resultado devuelve, adicional al “teléfono”, la “cantidad de familiares”.
Podemos observar el resultado final en la siguiente imagen:
Ejemplo #2. Asignar un valor en caso de no existir coincidencia
El cuarto argumento de la Sintaxis [valor_no_encontrado] es el primero en diferenciar la función XLOOKUP en Google Sheets de BUSCARV y BUSCARH.
Para hacer uso de este, simplemente incorporamos a la fórmula la palabra (entre comillas) que deseamos utilizar. Otra opción, es especificar una Celda en la que se indique que valor a mostrar cuando no exista coincidencia.
En nuestro ejemplo, incorporamos a la fórmula la frase: “No es tu amigo”.
Es así qué, cuando escribimos (en “valor_busqueda”), el nombre de una persona que no se encuentra en la lista, “Pepe” en nuestro ejemplo, el resultado será el siguiente:
Ejemplo #3. Coincidencia parcial con la función XLOOKUP en Google Sheets
En el Ejemplo #1 vimos que en valor_busqueda introducimos el nombre completo de nuestro amigo (Ej. Messi Leo), tal cual aparecía en el intervalo_busqueda.
Sin embargo, puede darse el escenario en el que simplemente queramos buscar por el nombre. En ese caso, hacemos uso del quinto argumento de la Sintaxis [modo_coincidencia].
Para nuestro ejemplo, en la fórmula que estamos introduciendo en la Celda G3, haremos uso de la opción de “comodín”. Para ello, incorporamos los siguientes signos en la fórmula: “*”&G2
Adicional a lo anterior, como quinto argumento, [modo coincidencia] en la fórmula, elegimos el número 2 (comodín)
En la siguiente imagen, observamos como queda la fórmula y el resultado final al introducir solamente el nombre “Leo”:
Ejemplo #4. Búsqueda horizontal en combinación con otra función.
Para nuestro ejemplo, con el fin de conocer la cantidad de personas que asistirán a nuestra “celebración”, queremos obtener el total de familiares de todos nuestros amigos. Para ello:
- Nos situamos en la Celda donde obtendremos el resultado B16 en nuestro ejemplo)
- Luego, escribimos la formula: =XLOOKUP(B15;A2:D2;A3:D13) donde:
- B15 corresponde al valor_búsqueda.
- A2:D2 es el rango sobre el cual se realizará la búsqueda (intervalo_búsqueda). En este caso, corresponde a una fila (horizontal)
- A3:D13 es el rango de donde se extraerá, si existiera, la coincidencia (intervalo_resultado). Nótese que es un rango con múltiples datos de filas y columnas.
- Finalmente, para obtener la suma total de familiares, “anidamos” la formula anterior dentro de la función SUMA.
En la siguiente imagen, observamos el resultado final al introducir “Familiares” en valor_búsqueda (Celda B15):
Ejemplo #5. Coincidencia aproximada
El quinto argumento de la Sintaxis de la funcion XLOOKUP en Google Sheets determina el [modo_coincidencia]. Por defecto, se establece como “0”, es decir, coincidencia exacta.
De todos modos, puede darse la situación de que solo necesitemos una coincidencia aproximada.
Por ejemplo, cómo podemos observar en la siguiente imagen, si tenemos un rango de puntajes que van del 0 a 100 y cada cierto intervalo se asigna una calificación de la A a la F, puede que el puntaje que estemos buscando no sea exactamente igual al definido.
En el caso anterior, definimos el quinto argumento de la Sintaxis [modo_coincidencia], con -1 si queremos que el valor se identifique como el inmediato inferior o 1 como el inmediato superior.
La aplicación la veremos con el siguiente ejemplo.
Queremos asignar una calificación de la A a la E para el puntaje obtenido por cada uno de los estudiantes. Para ello, procedemos de la siguiente manera:
- Nos situamos en la Celda donde queremos el resultado final, Celda F3 en nuestro ejemplo.
- Introducimos la fórmula: =XLOOKUP(E3;$A$3:$A$8;$B$3:$B$8;;-1) donde:
- E3 es el valor de búsqueda
- $A$3:$A$8 es el intervalo de búsqueda. Nótese que los valores fueron “fijados” ($) debido a que lueg, se copiara la formula al resto de los estudiantes.
- $B$3:$B$8 es el intervalo de donde se extraerá el resultado.
- ;; Es el cuarto argumento. Si bien esta vacío, es necesario poner los dos “punto y coma” (;;)
- -1 es la instrucción para que, en caso de no haber coincidencia, de como resultado el siguiente valor inferior.
- Finalmente, en la Columna F, copiamos la fórmula al resto de los estudiantes.