1. Faro

Nivel 6 · INDEX/MATCH, de derecha a izquierda

La solicitud

De Shirley Chen, Compradora

“Los precios de iluminación subieron el 1 de marzo. Antes de informar al equipo, me gustaría ver las primeras líneas de iluminación de febrero junto al precio de lista de hoy, para ver qué cambió. Mi catálogo está a la derecha, ordenado por nombre, con el id en la última columna, como lo exporta nuestro sistema antiguo.”

Tu objetivo

En E2:E21, usa INDEX y MATCH para devolver el precio de lista actual de cada línea: busca el product_id de la columna B en la columna product_id del catálogo I2:I21 con coincidencia exacta (tipo de coincidencia 0) y devuelve el precio de esa fila de H2:H21.

  • Llena E2:E21 con los valores correctospendiente
  • Con fórmulas, no con números escritospendiente
  • Usa INDEX MATCHpendiente

Tu hoja

Excel
La hoja de este nivel
ABCDEFGHIJ
1order_item_idproduct_idquantityprice_paidlist_price nameunit_priceproduct_id
219100128254.99Ashford Linen Pendant Light349.00131
3191011271179.00Bramble Ceramic Floor Lamp31.99121
4191111351149.00Delancey Black Metal Wall Sconce54.99128
5191161392179.00Dune Black Metal Floor Lamp51.99133
619122133148.99Dune Black Metal Pendant Light189.00127
7191371322189.00Dune Ceramic Arc Lamp109.00129
8191461292109.00Fairhaven Brass Wall Sconce189.00132
919177122229.99Fern Rattan Desk Lamp379.00126
10191841352149.00Marlow Glass Wall Sconce349.00124
1119197122129.99Marlow Linen Floor Lamp219.00137
1219208128154.99Monroe Glass Desk Lamp29.99122
1319215122129.99Oakley Brass Table Lamp199.00138
1419221134192.99Pacifica Black Metal Arc Lamp279.00125
15192241311349.00Pacifica Black Metal Table Lamp409.00130
16192321271179.00Quarry Ceramic Picture Light329.00140
1719234122129.99Quarry Rattan Picture Light159.00136
18192371242349.00Ridge Ceramic Chandelier159.00135
1919239134392.99Rowan Ceramic Chandelier189.00139
20192471241349.00Sable Linen Table Lamp92.99134
21192491281254.99Sutton Brass Chandelier30.99123
22
23

Cargando el editor…

    ResultadoPresiona Comprobar para comparar E2:E21

    Mote revisa tu resultado

    Presiona Comprobar. Cada celda correcta se vuelve una luciérnaga en tu linterna.

    La lección

    Antes de XLOOKUP, la búsqueda flexible era un par de funciones: INDEX y MATCH. La encontrarás en casi todos los libros que heredes, así que conviene conocerla al dedillo. El catálogo de Shirley es el caso clásico: ordenado por nombre en G1:I21, con el id en la última columna. VLOOKUP no puede buscar en él, porque los ids no están en su primera columna.

    MATCH encuentra la posición

    =MATCH(lookup_value, lookup_range, match_type)

    MATCH no devuelve un valor de la tabla. Devuelve dónde está el valor: su posición dentro del rango. =MATCH(B2,$I$2:$I$21,0) busca 128 entre los ids del catálogo y devuelve 3, porque 128 es el tercer id de I2:I21. El último argumento, 0, significa coincidencia exacta.

    INDEX elige el valor en una posición

    =INDEX(range, position)

    =INDEX($H$2:$H$21,3) devuelve el tercer precio del catálogo: 54.99. Junta las dos y MATCH le dice a INDEX qué fila leer:

    =INDEX($H$2:$H$21,MATCH(B2,$I$2:$I$21,0))

    El rango de búsqueda y el rango de retorno son argumentos separados, así que la columna de precios puede estar a la izquierda de los ids, como aquí, o en cualquier otro lugar. Los dos rangos solo necesitan empezar y terminar en las mismas filas.

    El 0 que falta

    MATCH tiene una trampa en su valor por defecto. Sin el tercer argumento usa 1, una coincidencia aproximada: asume que los ids están ordenados de menor a mayor y salta entre ellos (una búsqueda binaria) buscando el id más grande que no supere el tuyo. La fila 4 es el producto 135, el Ridge Ceramic Chandelier, 159.00. MATCH(B4,$I$2:$I$21) devuelve 9 en lugar de 17, e INDEX entrega 349.00, el precio de otra lámpara. Ningún error. Rellena esa versión hacia abajo y solo 3 de las 20 líneas salen bien, por suerte. VLOOKUP sin FALSE tiene exactamente la misma trampa. Escribe el 0 siempre que busques un id, un nombre o un código.

    VLOOKUP, INDEX/MATCH y XLOOKUP lado a lado

    VLOOKUP INDEX/MATCH XLOOKUP
    Dirección la clave debe estar en la primera columna, devuelve hacia la derecha cualquier dirección cualquier dirección
    Columna de retorno un número (4) un rango un rango
    Se inserta una columna en la tabla el número ahora apunta a la columna equivocada sigue bien sigue bien
    Coincidencia por defecto aproximada: escribe FALSE aproximada: escribe 0 exacta
    Clave no encontrada #N/A, envuélvelo en IFNA #N/A, envuélvelo en IFNA argumento if_not_found
    Dónde funciona en todas partes en todas partes Excel 2021, Microsoft 365, Google Sheets

    La fila de la columna insertada es la silenciosa. En el nivel 3, VLOOKUP(…,4,FALSE) devolvía el precio porque el precio era la 4.ª columna de F:I. Inserta una columna “supplier” dentro del catálogo y la columna 4 pasa a ser la categoría, sin ningún error. INDEX y MATCH apuntan a la propia columna de precios, así que Excel ajusta sus rangos cuando las columnas se mueven. En esta hoja, la versión con XLOOKUP es =XLOOKUP(B4,$I$2:$I$21,$H$2:$H$21), que también da 159.00.

    Usa XLOOKUP cuando todos los que abran el archivo lo tengan; INDEX/MATCH cuando el archivo deba funcionar en versiones antiguas de Excel; VLOOKUP con FALSE cuando la clave ya sea la primera columna y quieras la fórmula que un colega puede leer de un vistazo.

    Errores comunes

    • Sin 0 en MATCH. La búsqueda funciona en una tabla ordenada y falla en silencio en una desordenada.
    • Rangos sin fijar. El catálogo debe quedarse quieto al rellenar hacia abajo: $H$2:$H$21, $I$2:$I$21.
    • Rangos que no encajan. MATCH sobre I2:I21 con INDEX sobre H3:H22 devuelve el precio de la fila siguiente en cada coincidencia.
    • INDEX y MATCH intercambiados. MATCH recibe la columna de ids, INDEX recibe la columna que quieres recuperar.

    Elige qué puede ejecutarse en este sitio. Puedes cambiarlo cuando quieras desde "Configurar cookies", al pie de cada página.