Обща формула
=XLOOKUP(value,rng1,rng2,,-1) // approximate match =XLOOKUP(value,rng1,rng2) // exact match
Обобщение
За да извършите хоризонтално търсене с функцията XLOOKUP, предоставете стойност за търсене, масив за справка и масив с резултати. Предоставете аргумент match_mode за приблизително съвпадение, ако е необходимо. В показания пример формулата в I5, копирана в таблицата, е:
=XLOOKUP(E5,quantity,discount,,-1)
където количеството (C4: F4) и отстъпката (C5: F5) са наречени диапазони.
Обяснение
Едно приятно предимство на функцията XLOOKUP е, че синтаксисът, използван за хоризонтални справки, е същият като за вертикални справки.
В показания пример данните в C4: F5 съдържат отстъпки въз основа на количеството. С увеличаване на количеството отстъпката също се увеличава. Таблицата вдясно показва отстъпката, върната от XLOOKUP за няколко произволни количества. Формулата във F5, копирана надолу, е:
=XLOOKUP(E5,quantity,discount,,-1)
Същата формула без именувани диапазони е:
=XLOOKUP(H5,$C$4:$F$4,$C$5:$F$5,,-1)
Аргументите на XLOOKUP са конфигурирани по следния начин:
- Lookup_value идва от клетка E5
- Lookup_array е наименованото количество диапазон (C4: F4)
- Return_array е посочената отстъпка за диапазон (C5: F5)
- Аргументът not_found не е предоставен
- Режимът match_mode е зададен на -1 (точно съвпадение или следващото по-малко)
- Режимът на търсене не е предоставен и по подразбиране е 1 (първи до последен)
На всеки ред XLOOKUP търси количеството в диапазона C4: F4. Когато бъде намерено точно съвпадение, се връща съответната отстъпка в ред 5. Когато не бъде намерено точно съвпадение, се връща отстъпката, свързана със следващото най-малко количество.
XLOOKUP срещу HLOOKUP
Еквивалентната формула HLOOKUP за този пример е една от двете формули по-долу:
=HLOOKUP(H5,$C$4:$F$5,2) // default approximate =HLOOKUP(H5,$C$4:$F$5,2,1) // explicit approximate
Има няколко разлики, които си струва да се отбележат:
- HLOOKUP изисква пълния масив на таблицата като втори аргумент. XLOOKUP изисква само диапазона със справочни стойности.
- HLOOKUP изисква индекс на ред, за да посочи колона с резултат. XLOOKUP изисква диапазон, който съдържа стойности на резултатите.
- HLOOKUP изпълнява приблизително съвпадение по подразбиране. XLOOKUP изпълнява точно съвпадение по подразбиране.
- HLOOKUP изисква данните за справка да бъдат сортирани по справочна стойност. XLOOKUP работи с несортирани данни.
- HLOOKUP извършва само хоризонтални справки, XLOOKUP може да извършва както хоризонтални, така и вертикални справки.