Index, Match y Xmatch
Desliza para mostrar el menú
XLOOKUP es la función de búsqueda preferida para modelos modernos de Excel, pero muchos libros de trabajo reales aún dependen de INDEX y MATCH. En este capítulo, aprende cómo estas funciones trabajan juntas y cómo XMATCH extiende la misma lógica con mayor flexibilidad.
Estructura de MATCH
=MATCH(lookup_value, lookup_array, [match_type])
lookup_value: valor que se busca;lookup_array: rango donde se busca;[match_type]: comportamiento de coincidencia;0: coincidencia exacta;1: valor más grande menor o igual que el valor buscado;-1: valor más pequeño mayor o igual que el valor buscado.
MATCH devuelve una posición, no el valor real.
Estructura de INDEX
=INDEX(array, row_num, [col_num])
array: conjunto de datos del que se devuelve el valor;row_num: posición de la fila;[col_num]: posición de columna opcional.
INDEX recupera un valor según la posición.
Combinación de INDEX y MATCH
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
MATCH(...): encuentra la posición del producto;INDEX(...): devuelve el valor en esa posición.
Esto recrea el comportamiento de búsqueda sin limitaciones de dirección.
Estructura de XMATCH
=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
lookup_value: valor que se busca;lookup_array: rango donde se busca;[match_mode]: lógica de coincidencia;[search_mode]: dirección de búsqueda.
XMATCH devuelve posiciones igual que MATCH, pero añade controles de búsqueda modernos similares a XLOOKUP.
Dentro de la hoja Summary, escribe:
=MATCH("Laptop", Products[Product], 0)
Confirma que Excel devuelve la posición de Laptop dentro de la tabla Products.
Escribe:
=INDEX(Products[Price], 3)
Confirma que la fórmula devuelve el valor en la posición 3.
Escribe:
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
La fórmula ahora recupera el precio del producto correspondiente de forma dinámica.
Reemplaza el valor fijo de búsqueda con:
=INDEX(Products[Price], MATCH([@Product], Products[Product], 0))
[@Product]: valor del producto en la fila actual;Products[Product]: columna de búsqueda;Products[Price]: columna de valores devueltos.
La fórmula ahora funciona de manera dinámica dentro de la estructura de la tabla.
Escribe:
=XMATCH("Gaming Chair", Products[Product])
Confirma que Excel devuelve la posición de la fila correspondiente.
Escribe:
=INDEX(Products, XMATCH("Gaming Chair", Products[Product]), XMATCH("Cost", Products[#Headers]))
- Primer
XMATCH(...): recupera la posición de la fila; - Segundo
XMATCH(...): recupera la posición de la columna; INDEX(...): devuelve el valor en la intersección.
Esto crea un sistema de búsqueda dinámico de filas y columnas.
Cambia tanto el producto como los valores de columna dentro de la fórmula.
Confirma que el resultado se actualiza dinámicamente según la combinación de fila y columna seleccionada.
1. ¿Cuál es el papel principal de MATCH en la combinación INDEX/MATCH?
2. ¿Por qué se requiere INDEX al usar MATCH?
3. ¿Cuál es la principal ventaja de usar INDEX con XMATCH para búsquedas bidimensionales?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla