La solicitud

De Thomas Whitaker, Director de merchandising
Tu objetivo
Usa XLOOKUP para rellenar D2:D20 con el nombre de producto de cada línea y E2:E20 con su subcategoría. Busca el product_id de la columna B en la columna product_id del catálogo I2:I17 (su última columna) y devuelve desde G2:G17 (nombre) o H2:H17 (subcategoría). Cuando un producto no esté en el catálogo, devuelve el texto "discontinued".
- Llena
D2:E20con los valores correctospendiente - Con fórmulas, no con números escritospendiente
- Usa
XLOOKUPpendiente
Tu hoja
| A | B | C | D | E | F | G | H | I | J | |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | order_item_id | product_id | quantity | product_name | subcategory | name | subcategory | product_id | ||
| 2 | 18334 | 108 | 8 | Vale Velvet Loveseat | Sofas | 101 | ||||
| 3 | 18342 | 119 | 4 | Alder Oak Coffee Table | Tables | 102 | ||||
| 4 | 18385 | 115 | 1 | Orchard Rattan Dining Chair | Chairs | 103 | ||||
| 5 | 18388 | 110 | 4 | Upland Oak Bookcase | Storage | 104 | ||||
| 6 | 18394 | 109 | 1 | Avery Leather Bed Frame | Beds | 105 | ||||
| 7 | 18419 | 109 | 1 | Birch Teak Side Table | Tables | 107 | ||||
| 8 | 18421 | 105 | 1 | Ashford Leather Dining Chair | Chairs | 108 | ||||
| 9 | 18438 | 103 | 2 | Oakley Oak Bookcase | Storage | 109 | ||||
| 10 | 18478 | 118 | 3 | Linen Velvet Headboard | Beds | 110 | ||||
| 11 | 18486 | 106 | 1 | Tidewater Teak Loveseat | Sofas | 111 | ||||
| 12 | 18501 | 101 | 1 | Vale Walnut Coffee Table | Tables | 112 | ||||
| 13 | 18514 | 108 | 1 | Bayside Rattan Dining Chair | Chairs | 113 | ||||
| 14 | 18519 | 110 | 1 | Weston Ash Bed Frame | Beds | 115 | ||||
| 15 | 18522 | 117 | 1 | Orchard Walnut Side Table | Tables | 117 | ||||
| 16 | 18529 | 111 | 1 | Willow Ash Lounge Chair | Chairs | 118 | ||||
| 17 | 18561 | 115 | 1 | Alder Linen Sideboard | Storage | 119 | ||||
| 18 | 18571 | 104 | 1 | |||||||
| 19 | 18575 | 106 | 2 | |||||||
| 20 | 18582 | 106 | 1 | |||||||
| 21 | ||||||||||
| 22 |
Cargando el editor…
Solución de referencia
Mote revisa tu resultado
Presiona Comprobar. Cada celda correcta se vuelve una luciérnaga en tu linterna.
Lo que recibe Thomas, y por qué
La lección
VLOOKUP tiene dos costumbres que viste en el nivel 3: solo busca en la primera columna de su tabla y cuenta las columnas por número. La exportación del catálogo de Thomas rompe la primera regla. El id está en la última columna, I, con el nombre y la subcategoría a su izquierda, en G y H. VLOOKUP no puede mirar hacia la izquierda. XLOOKUP, la búsqueda moderna de Excel 2021, Microsoft 365 y Google Sheets, sí.
Busca en un rango, devuelve de otro
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found])
| Argumento | En D2 | Significa |
|---|---|---|
lookup_value |
B2 |
el id que se busca (108) |
lookup_array |
$I$2:$I$17 |
la columna donde buscar |
return_array |
$G$2:$G$17 |
la columna de la que traer el valor |
if_not_found |
"discontinued" |
qué mostrar cuando el id no está |
En lugar de una tabla y un número de columna, XLOOKUP recibe dos rangos separados. Para la fila 2 encuentra 108 en la 7.ª fila de I2:I17 y devuelve el 7.º valor de G2:G17: Ashford Leather Dining Chair. Para la subcategoría, cambia solo el rango de retorno a $H$2:$H$17, que da Chairs. No importa de qué lado esté el rango de retorno, así que una búsqueda de derecha a izquierda no es más difícil que una de izquierda a derecha. Los dos rangos deben tener la misma altura; si no, XLOOKUP muestra #VALUE!.
Coincidencia exacta por defecto
XLOOKUP busca exactamente 108 a menos que le pidas otra cosa, y no le importa cómo esté ordenado el catálogo. No hay que acordarse de ningún FALSE. Su quinto argumento puede pedir en su lugar el siguiente valor menor o mayor, lo que sirve para tablas de tramos como las tarifas de envío del nivel 1, pero para ids quieres el valor por defecto.
Un valor de reemplazo incorporado
El catálogo solo lista los productos a la venta hoy. El producto 106 se descontinuó, y aparece en tres líneas (filas 11, 19 y 20). Sin cuarto argumento, XLOOKUP(B11,…) muestra #N/A. Con "discontinued", la celda dice lo que pasó, sin ningún IFERROR alrededor.
Usa un valor de reemplazo solo cuando sepas por qué faltan las claves. Aquí la razón es clara. Si faltaran docenas de ids sin motivo, lo honesto sería dejar el #N/A y averiguar por qué.
Fija los rangos de búsqueda
Cada fila busca en el mismo catálogo, así que ambos rangos necesitan $. Rellenada hacia abajo sin ellos, I2:I17 pasa a I3:I18 en la fila siguiente, luego a I4:I19, y el catálogo se aleja una fila cada vez. En esta hoja eso convierte la línea de la fila 8 (producto 105, Avery Leather Bed Frame) en “discontinued”, porque el 105 ya se salió de la búsqueda. En total, ocho líneas de productos que siguen a la venta terminan marcadas como descontinuadas.
Errores comunes
- Intercambiar los dos rangos.
XLOOKUP(B2,$G$2:$G$17,$I$2:$I$17)busca 108 entre los nombres y no encuentra nada. - Rangos sin fijar. Las primeras filas se ven bien, las de más abajo declaran que faltan productos.
- Un número guardado como texto. Si los ids de una tabla son texto (
"108"), XLOOKUP no los hará coincidir con el número 108. El texto queda a la izquierda de la celda, los números a la derecha. - Ocultar un problema real. Un valor de reemplazo en cada búsqueda puede tapar una unión rota. Cuenta los reemplazos: aquí son exactamente las 3 líneas del producto 106.
- Esperar un derrame. En Microsoft 365 y Google Sheets,
XLOOKUP(B2,$I$2:$I$17,$G$2:$H$17)devuelve nombre y subcategoría a la vez y se derrama en E. Esta hoja de práctica guarda un valor por celda, así que escribe una fórmula por columna.
¡Linterna encendida!
Practicaste: xlookuplookupsif not foundabsolute references
- Resuelto
- Sin pistas
- Al primer intento
