Екцел КСЛООКУП функција са примерима формула

  • Деле Ово
Michael Brown

Упутство представља КСЛООКУП – нову функцију за вертикално и хоризонтално тражење у Екцел-у. Тражење лево, последње подударање, Влоокуп са више критеријума и много више ствари које су некада захтевале диплому из ракетних наука да би се оствариле сада су постале лаке као АБЦ.

Кад год треба да потражите у Екцел-у , коју функцију бисте користили? Да ли је то камен темељац ВЛООКУП или његов хоризонтални брат ХЛООКУП? У сложенијем случају, да ли ћете се ослонити на канонску комбинацију ИНДЕКС МАТЦХ или предати посао на Повер Куери? Добра вест је да више немате избора – све ове методе отварају место за моћнијег и свестранијег наследника, функцију КСЛООКУП.

Како је КСЛООКУП бољи? На много начина! Може да изгледа вертикално и хоризонтално, лево и изнад, да тражи са више критеријума, па чак и да врати целу колону или ред података, а не само једну вредност. Мицрософту је требало више од 3 деценије, али су коначно успели да дизајнирају робусну функцију која превазилази многе фрустрирајуће грешке и слабости ВЛООКУП-а.

У чему је квака? Авај, постоји један. Функција КСЛООКУП доступна је само у програму Екцел за Мицрософт 365, Екцел 2021 и Екцел за веб.

    Екцел КСЛООКУП функција – синтакса и користи

    функцију КСЛООКУП у Екцел претражује опсег или низ за одређену вредност и враћа сродну вредност из друге колоне. Може тражити обојепреузети све детаље који се односе на продавца од интереса (Ф2). Оно што треба да урадите је да наведете опсег, а не једну колону или ред, за аргумент ретурн_арраи :

    =XLOOKUP(F2, A2:A7, B2:D7)

    Унесите формулу у горњем левом углу ћелију опсега резултата, а Екцел аутоматски пребацује резултате у суседне празне ћелије. У нашем случају, низ повратних података (Б2:Д7) укључује 3 колоне ( Датум , Итем и Амоунт ), а све три вредности се враћају у опсег Г2:И2.

    Ако бисте радије распоредили резултате вертикално у колону, угнездите КСЛООКУП у функцију ТРАНСПОСЕ да бисте окренули враћени низ:

    =TRANSPOSE(XLOOKUP(G1, A2:A7, B2:D7))

    На сличан начин, можете вратити целу колону података, рецимо колону Износ . За ово користите ћелију Ф1 која садржи „Износ“ као лоокуп_валуе , опсег А1:Д1 који садржи заглавља колона као лоокуп_арраи и опсег А2:Д7 који садржи све податке као ретурн_арраи .

    =XLOOKUP(F1, A1:D1, A2:D7)

    Напомена. Пошто је више вредности попуњено у суседне ћелије, уверите се да имате довољно празних ћелија десно или доле. Ако Екцел не може да пронађе довољно празних ћелија, порука #СПИЛЛ! долази до грешке.

    Савет. КСЛООКУП не може само да врати више уноса, већ их и замени другим вредностима које наведете. Пример такве масовне замене може се наћи овде: Како претраживати и заменити више вредности помоћу КСЛООКУП-а.

    КСЛООКУП савише критеријума

    Још једна велика предност КСЛООКУП-а је то што он нативно обрађује низове. Због ове могућности, можете да процените више критеријума директно у аргументу лоокуп_арраи :

    КСЛООКУП(1, ( цритериа_ранге1 = цритериа1 ) * ( опсег_критеријума2 = критеријум2 ) * (…), повратни_низ )

    Како ова формула функционише : Резултат сваког теста критеријума је низ ТАЧНИХ и ЛАЖНИХ вредности. Множење низова претвара ТРУЕ и ФАЛСЕ у 1 и 0, респективно, и производи коначни низ за тражење. Као што знате, множење са 0 увек даје нулу, тако да су у низу за тражење само ставке које испуњавају све критеријуме представљене са 1. И пошто је наша вредност тражења „1“, Екцел узима прву „1“ у лоокуп_арраи (прво подударање) и враћа вредност из ретурн_арраи на истој позицији.

    Да бисмо видели формулу у акцији, хајде да извучемо износ из Д2:Д10 ( ретурн_арраи ) са следећим условима:

    • Критеријуми1 (датум) = Г1
    • Критеријуми2 (продавац) = Г2
    • Критеријуми3 (ставка) = Г3

    Са датумима у А2:А10 ( опсег_критеријума1 ), именима продавача у Б2:Б10 ( опсег_критерија2 ) и ставкама у Ц2:Ц10 ( критеријум_опсег3 ), формула поприма овај облик:

    =XLOOKUP(1, (B2:B10=G1) * (A2:A10=G2) * (C2:C10=G3), D2:D10)

    Иако Екцел КСЛООКУП функција обрађује низове, она ради као редовна формула и завршава се уобичајеним Ентерпритисак на тастер.

    Формула КСЛООКУП са више критеријума није ограничена на услове „једнако“. Можете слободно да користите и друге логичке операторе. На пример, да бисте филтрирали поруџбине направљене на датум у Г1 или раније, ставите „&лт;=Г1“ у први критеријум:

    =XLOOKUP(1, (A2:A10<=G1) * (B2:B10=G2) * (C2:C10=G3), D2:D10)

    Двоструко КСЛООКУП

    Да бисте пронашли вредност на пресеку одређеног реда и колоне, извршите такозвано двоструко тражење или матрично тражење . Да, и Екцел КСЛООКУП то може! Једноставно угнездите једну функцију у другу:

    КСЛООКУП( низ_потражи1 , низ_потражи1 , КСЛООКУП( вредност_потражи2 , низ_потражи2 , дата_валуес ))

    Како ова формула функционише : Формула је заснована на КСЛООКУП-овој способности да врати цео ред или колону. Унутрашња функција тражи своју вредност тражења и враћа колону или ред повезаних података. Тај низ иде спољној функцији као повратни_низ .

    За овај пример, наћи ћемо продају које је остварио одређени продавац у одређеном тромесечју. За ово уносимо вредности за тражење у Х1 (име продавца) и Х2 (четврт) и радимо двосмерно Кслоокуп са следећом формулом:

    =XLOOKUP(H1, A2:A6, XLOOKUP(H2, B1:E1, B2:E6))

    Или обрнуто :

    =XLOOKUP(H2, B1:E1, XLOOKUP(H1, A2:A6, B2:E6))

    Где су А2:А6 имена продавача, Б1:Е1 су четвртине (заглавља колона), а Б2:Е6 су вредности података.

    Двосмерно тражење се такође може извршити помоћу формуле ИНДЕКС Матцх и у анеколико других начина. За више информација погледајте Двосмерно тражење у Екцел-у.

    Ако грешка КСЛООКУП

    Када вредност претраживања није пронађена, Екцел КСЛООКУП враћа грешку #Н/А. Прилично познато и разумљиво стручним корисницима, може бити прилично збуњујуће за почетнике. Да бисте заменили стандардну нотацију грешке поруком прилагођеном кориснику, унесите сопствени текст у 4. аргумент под називом иф_нот_фоунд .

    Назад на први пример о коме се говори у овом водичу. Ако неко унесе неважеће име океана у Е1, следећа формула ће му експлицитно рећи да „Није пронађено подударање“:

    =XLOOKUP(E1, A2:A6, B2:B6, "No match is found")

    Напомене:

    • Аргумент иф_нот_фоунд хвата само грешке #Н/А, не све грешке.
    • #Н/А грешке се такође могу руковати помоћу ИФНА и ВЛООКУП-а, али синтакса је мало сложенија и формула је дужа.

    КСЛООКУП осетљив на велика и мала слова

    Подразумевано, функција КСЛООКУП третира мала и велика слова као исте знакове. Да бисте га учинили осетљивим на велика и мала слова, користите функцију ЕКСАЦТ за аргумент лоокуп_арраи :

    КСЛООКУП(ТРУЕ, ЕКСАЦТ( лоокуп_валуе , лоокуп_арраи ), ретурн_арраи )

    Како ова формула функционише : функција ЕКСАЦТ упоређује вредност тражења са сваком вредношћу у низу претраживања и враћа ТРУЕ ако су потпуно исте укључујући и велика слова, а у супротном ФАЛСЕ. Овај низ логичких вредности иде у лоокуп_арраи аргумент КСЛООКУП-а. Као резултат, КСЛООКУП претражује ТРУЕ вредност у горњем низу и враћа подударање из низа враћања.

    На пример, да би добио цену од Б2:Б7 ( ретурн_арраи ) за ставка у Е1 ( лоокуп_валуе) , формула у Е2 је:

    =XLOOKUP(TRUE, EXACT(E1, A2:A7), B2:B7, "Not found")

    Напомена. Ако постоје две или више потпуно истих вредности у низу претраживања (укључујући велика и мала слова), враћа се прво пронађено подударање.

    Екцел КСЛООКУП не ради

    Ако ваша формула не ради како треба или резултира грешком, највероватније је то због следећих разлога:

    КСЛООКУП није доступан у мом Екцел-у

    Функција КСЛООКУП није компатибилна уназад. Доступан је само у Екцел-у за Мицрософт 365 и Екцел 2021 и неће се појавити у ранијим верзијама.

    КСЛООКУП враћа погрешан резултат

    Ако ваша очигледно исправна Кслоокуп формула враћа погрешну вредност, велике су шансе да се опсег тражења или враћања „померио“ када је формула копирана надоле или преко. Да бисте спречили да се ово деси, увек закључајте оба опсега апсолутним референцама на ћелије (као што је $А$2:$А$10).

    КСЛООКУП враћа грешку #Н/А

    Ан #Н /Грешка само значи да вредност тражења није пронађена. Да бисте ово поправили, покушајте да потражите приближно подударање или обавестите своје кориснике да није пронађено подударање.

    КСЛООКУП враћа грешку #ВАЛУЕ

    А #ВАЛУЕ! грешка се јавља ако су низови тражења и враћања некомпатибилнидимензије. На пример, није могуће тражити у хоризонталном низу и вратити вредности из вертикалног низа.

    КСЛООКУП враћа #РЕФ грешку

    А #РЕФ! грешка се јавља када се тражи између две различите радне свеске, од којих је једна затворена. Да бисте исправили грешку, једноставно отворите обе датотеке.

    Као што сте управо видели, КСЛООКУП има много сјајних функција које га чине ВРХУНОМ за скоро свако тражење у Екцел-у. Захваљујем вам што сте читали и надам се да се видимо на нашем блогу следеће недеље!

    Вежбање за преузимање

    Примери Екцел КСЛООКУП формуле (.клск датотека)

    вертикално и хоризонтално и извршите тачно подударање (подразумевано), приближно (најближе) подударање или џокер (делимично) подударање.

    Синтакса функције КСЛООКУП је следећа:

    КСЛООКУП(вредност_проналажења, низ_погледавања, ретурн_арраи, [иф_нот_фоунд], [матцх_моде], [сеарцх_моде])

    Прва 3 аргумента су обавезна, а последња три су опциона.

    • Лоокуп_валуе - вредност за сеарцх фор.
    • Лоокуп_арраи - опсег или низ где се траже.
    • Ретурн_арраи - опсег или низ из којих се враћају вредности.
    • Иф_нот_фоунд [опционо] - вредност коју треба вратити ако није пронађено подударање. Ако се изостави, враћа се грешка #Н/А.
    • Режим_подударања [опционо] – тип подударања који треба извршити:
      • 0 или изостављен (подразумевано) – тачно подударање . Ако није пронађена, враћа се грешка #Н/А.
      • -1 - тачно подударање или следеће мање. Ако се не пронађе тачно подударање, враћа се следећа мања вредност.
      • 1 - тачно подударање или следећа већа. Ако се не пронађе тачно подударање, враћа се следећа већа вредност.
      • 2 - подударање џокер знакова.
    • Режим_претраге [опционо] - смер претраге:
      • 1 или изостављен (подразумевано) - за претрагу од првог до последњег.
      • -1 - за претрагу обрнутим редоследом, од последњег до првог.
      • 2 - бинарна претрага података сортираних узлазно.
      • -2 - бинарна претрага података сортираних опадајуће.

      Према Мицрософт-у, бинарнипретрага је укључена за напредне кориснике. То је посебан алгоритам који проналази позицију тражене вредности унутар сортираног низа упоређујући је са средњим елементом низа. Бинарна претрага је много бржа од обичне претраге, али ради исправно само на сортираним подацима.

    Основна КСЛООКУП формула

    Да бисмо стекли боље разумевање, хајде да направимо Кслоокуп формулу у њеном најједноставнијем облику да бисмо извршили тачно тражење. За ово ће нам требати само прва 3 аргумента.

    Претпоставимо да имате збирну табелу са информацијама о пет океана на Земљи. Желите да добијете област одређеног уноса океана у Ф1 ( лоокуп_валуе ). Са називима океана у А2:А6 ( лоокуп_арраи ) и областима у Ц2:Ц6 ( ретурн_арраи ), формула иде на следећи начин:

    =XLOOKUP(F1, A2:A6, C2:C6)

    Преведено на обичан енглески, каже: потражите вредност Ф1 у А2:А6 и вратите вредност из Ц2:Ц6 у истом реду. Без бројева индекса колона, без сортирања, без других смешних чуда Влоокуп-а! Једноставно ради :)

    КСЛООКУП наспрам ВЛООКУП-а у Екцел-у

    У поређењу са традиционалним ВЛООКУП-ом, КСЛООКУП има много предности. По чему је бољи од ВЛООКУП-а? Ево листе од 10 најбољих функција које одбијају било коју другу функцију тражења у Екцел-у:

    1. Вертикално и хоризонтално тражење . Функција КСЛООКУП добила је име због своје способности да тражи и вертикално ихоризонтално.
    2. Погледајте у било ком смеру: десно, лево, доле или горе . Док ВЛООКУП може претраживати само у крајњој левој колони, а ХЛООКУП у горњем реду, КСЛООКУП нема таква ограничења. Злогласно тражење лево у Екцел-у више није мука!
    3. Подразумевано тачно подударање . У већини ситуација, тражићете тачно подударање, а КСЛООКУП га подразумевано враћа (за разлику од функције ВЛООКУП која подразумевано одговара приближном подударању). Наравно, можете натерати КСЛООКУП да изврши и приближно подударање ако је потребно.
    4. Делимично подударање са џокер знаковима . Када знате само неки део вредности за тражење, а не целу, добро је подударање џокер знакова.
    5. Тражите обрнутим редоследом . Раније, да бисте добили последње појављивање, морали сте да обрнете редослед изворних података. Сада једноставно поставите аргумент сеарцх_моде на -1 да бисте натерали вашу Кслоокуп формулу да тражи од позади и врати последње подударање.
    6. Врати више вредности . Манипулисањем са аргументом ретурн_арраи , можете извући цео ред или колону података који се односе на вашу вредност тражења.
    7. Претражите са више критеријума . Екцел КСЛООКУП природно обрађује низове, што омогућава да се изврши претраживање са више критеријума.
    8. Ако грешка функционалност . Традиционално, користимо ИФНА функцију да ухватимо #Н/А грешке. КСЛООКУП укључује ову функционалност уАргумент иф_нот_фоунд који омогућава испис сопственог текста ако није пронађено важеће подударање.
    9. Уметања/брисања колона . Један од најиритантнијих проблема са ВЛООКУП-ом је то што додавање или уклањање колона квари формулу јер је повратна колона идентификована бројем индекса. Са КСЛООКУП-ом дајете повратни опсег, а не број, што значи да можете уметнути и уклонити онолико колона колико вам је потребно, а да ништа не покварите.
    10. Боље перформансе . ВЛООКУП би могао да успори ваше радне листове јер укључује целу табелу у прорачуне, што резултира обрадом много више ћелија него што је стварно потребно. КСЛООКУП обрађује само низове за тражење и враћање од којих заиста зависи.

    Како користити КСЛООКУП у Екцелу – примери формуле

    Следећи примери показују најкорисније функције КСЛООКУП-а у акцији. Поред тога, открићете неколико нетривијалних употреба које ће ваше вештине тражења у Екцел-у подићи на нови ниво.

    Погледајте вертикално и хоризонтално

    Мицрософт Екцел је некада имао две функције за различито тражење типови, од којих сваки има сопствену синтаксу и правила коришћења: ВЛООКУП да гледа вертикално у колони и ХЛООКУП да гледа хоризонтално у реду.

    Функција КСЛООКУП може да ради и једно и друго са истом синтаксом. Разлика је у томе шта дајете за низове за тражење и враћање.

    За в-лоокуп, наведите колоне:

    =XLOOKUP(E1, A2:A6, B2:B6)

    Зах-лоокуп, унесите редове уместо колона:

    =XLOOKUP(I1, B1:F1, B2:F2)

    Лева претрага се врши изворно

    У ранијим верзијама Екцел-а, ИНДЕКС МАТЦХ формула је била једини поуздан начин да се погледа лево или горе. Сада више не морате да комбинујете две функције где би једна била довољна. Само наведите циљни низ тражења и КСЛООКУП ће га обрадити без проблема без обзира на његову локацију.

    Као пример, додајмо колону Ранк лево од наше табеле узорка. Циљ је добити ранг океанског уноса у Ф1. ВЛООКУП би се овде спотакнуо јер може да врати вредност само из колоне десно од колоне за тражење. Кслоокуп формула се носи са лакоћом:

    =XLOOKUP(F1, B2:B6, A2:A6)

    На сличан начин, можете погледати изнад када претражујете хоризонтално у редовима.

    КСЛООКУП са тачним и приближним подударањем

    Понашање подударања контролише 5. аргумент који се зове матцх_моде . Подразумевано се врши тачно подударање.

    Обратите пажњу да чак и када одаберете приближно подударање ( матцх_моде постављено на 1 или -1), функција ће и даље тражити тачно први меч. Разлика је у томе шта враћа ако тачна вредност тражења није пронађена.

    Аргумент Матцх_моде:

    • 0 или изостављен - тачно подударање; ако није пронађено - #Н/А грешка.
    • -1 - тачно подударање; ако није пронађена - следећа мања ставка.
    • 1 - тачно подударање; ако се не нађе- следећа већа ставка.

    Тачно подударање КСЛООКУП

    Ово је опција коју вероватно користите 99% времена када тражите у Екцел-у. Пошто је тачно подударање подразумевано понашање КСЛООКУП-а, можете изоставити матцх_моде и унети само прва 3 потребна аргумента.

    У неким ситуацијама, међутим, тачно подударање неће функционисати. Типичан сценарио је када ваша табела за тражење не садржи све вредности, већ „прекретнице“ или „границе“ као што су попусти засновани на количини, провизије засноване на продаји итд.

    Наша табела за тражење узорка показује корелацију између испитних бодова и оцена. Као што можете видети на слици испод, тачно подударање функционише само када се резултат одређеног ученика тачно поклапа са вредношћу у табели за тражење (као Кристијан у реду 3). У свим осталим случајевима враћа се грешка #Н/А.

    =XLOOKUP(F2, $B$2:$B$6, $C$2:$C$6)

    Да бисмо добили оцене уместо #Н/А грешака, треба нам да бисте потражили приближно подударање као што је приказано у следећем примеру.

    Приближно подударање КСЛООКУП

    Да бисте извршили приближно тражење, поставите аргумент матцх_моде на -1 или 1 , у зависности од тога како су ваши подаци организовани.

    У нашем случају, табела за претраживање наводи доње границе оцена. Дакле, поставили смо матцх_моде на -1 да бисмо тражили следећу мању вредност када није пронађено тачно подударање:

    =XLOOKUP(F11, $B$11:$B$15, $C$11:$C$15, ,-1)

    На пример, Бриан има резултат од 98 (Ф2). Формула тражи ову вредност тражења у Б2:Б6али не могу да га пронађу. Затим тражи следећу мању ставку и проналази 90, што одговара оцени А:

    Ако би наша табела за тражење садржала горње границе оцена, поставили бисмо матцх_моде до 1 за тражење следеће веће ставке ако тачно подударање не успе:

    =XLOOKUP(F2, $B$2:$B$6, $C$2:$C$6, ,1)

    Формула тражи 98 и поново не може да је пронађе. Овог пута покушава да пронађе следећу већу вредност и добија 100, што одговара оцени А:

    Савет. Када копирате Кслоокуп формулу у више ћелија, закључајте опсеге за тражење или враћање апсолутним референцама ћелија (као што је $Б$2:$Б$6) да бисте спречили њихову промену.

    КСЛООКУП са делимичним подударањем (вилдцардс)

    Да бисте извршили тражење делимичног подударања, поставите аргумент матцх_моде на 2, који даје инструкције функцији КСЛООКУП да обради џокер знакове:

    • Звездица (*) – представља било који низ знакова.
    • Знак питања (?) – представља било који појединачни знак.

    Да бисте видели како функционише , размотрите следећи пример. У колони А имате неколико модела паметних телефона и, у колони Б, њихов капацитет батерије. Занима вас батерија одређеног паметног телефона. Проблем је у томе што нисте сигурни да можете да унесете назив модела тачно онако како се појављује у колони А. Да бисте ово превазишли, унесите део који је дефинитивно ту и замените преостале знакове џокер знаковима.

    На пример, да добијеминформације о батерији иПхоне Кс, користите ову формулу:

    =XLOOKUP("*iphone X*", A2:A8, B2:B8, ,2)

    Или унесите познати део вредности за тражење у неку ћелију и спојите референцу ћелије са џокер знаковима:

    =XLOOKUP("*"&E1&"*", A2:A8, B2:B8, ,2)

    КСЛООКУП обрнутим редоследом да бисте добили последње појављивање

    У случају да ваша табела садржи неколико појављивања вредности претраживања, понекад ће вам требати да вратите последње подударање . Да бисте то урадили, конфигуришите своју Кслоокуп формулу да тражи обрнутим редоследом.

    Смер претраге се контролише тако да буде 6. аргумент под називом режим_претраге :

    • 1 или изостављено (подразумевано) - тражи од прве до последње вредности, тј. од врха до дна са вертикалним тражењем или с лева на десно са хоризонталним тражењем.
    • -1 - тражи у обрнутом редоследу од последње до прве вредности .

    Као пример, вратимо последњу продају коју је извршио одређени продавац. За ово смо саставили прва три потребна аргумента (Г1 за лоокуп_валуе , Б2:Б9 за лоокуп_арраи и Д2:Д9 за ретурн_арраи ) и ставили - 1 у 5. аргументу:

    =XLOOKUP(G1, B2:B9, D2:D9, , ,-1)

    Једноставно и лако, зар не?

    КСЛООКУП за враћање више колона или редова

    Још једна невероватна карактеристика КСЛООКУП-а је његова способност да врати више од једне вредности која се односи на исто подударање. Све је урађено са стандардном синтаксом и без икаквих додатних манипулација!

    Из табеле испод, претпоставимо да желите да

    Мајкл Браун је посвећен технолошки ентузијаста са страшћу за поједностављење сложених процеса помоћу софтверских алата. Са више од деценије искуства у технолошкој индустрији, усавршио је своје вештине у Мицрософт Екцел-у и Оутлоок-у, као и у Гоогле табеле и документима. Мајклов блог посвећен је дељењу свог знања и стручности са другима, пружајући једноставне савете и упутства за побољшање продуктивности и ефикасности. Без обзира да ли сте искусан професионалац или почетник, Мајклов блог нуди вредне увиде и практичне савете како да на најбољи начин искористите ове основне софтверске алате.