
Загальна формула
=XLOOKUP(value,rng1,rng2,"no match",0,-1) // last exact match
Резюме
Щоб отримати останній збіг у наборі даних за допомогою XLOOKUP, встановіть для п’ятого аргументу значення -1. У наведеному прикладі формула в G5, скопійована вниз, має вигляд:
=XLOOKUP(F5,item,price,0,-1)
де товар (B5: B15) і ціна (D5: D15) називаються діапазонами.
Пояснення
За замовчуванням XLOOKUP поверне перший збіг у наборі даних. Однак XLOOKUP пропонує необов’язковий аргумент, який називається search_mode, щоб контролювати порядок пошуку даних. Встановлення режиму пошуку на -1 призводить до того, що XLOOKUP здійснює пошук «від останнього до першого» або, іншими словами, пошук за даними назад. Ви можете побачити цей параметр, що використовується у наведеному прикладі. Формула в G5, скопійована вниз, така:
=XLOOKUP(F5,item,price,"no match",0,-1)
Та сама формула без іменованих діапазонів:
=XLOOKUP(F5,$B$5:$B$15,$D$5:$D$15,"no match",0,-1)
Аргументи XLOOKUP налаштовуються наступним чином:
- Lookup_value походить з комірки F5
- Lookup_array - це названий елемент діапазону (B5: B15)
- Return_array - це названа ціна діапазону (D5: D15)
- Аргумент not_found надається як "не збігається"
- Режим match_mode встановлений на 0 (точна відповідність)
- Режим_пошуку встановлений на -1 (останній до першого)
У кожному рядку XLOOKUP шукає назву елемента у стовпці F у B5: B15, починаючи з нижньої частини. Коли знайдено точну відповідність, повертається відповідна ціна в стовпці D. Якщо збігу не знайдено, XLOOKUP поверне # N / A.
Примітка: цей приклад залежить від даних, відсортованих за датою у порядку зростання. Якщо дані несортовані, див. Цей приклад.