Nova funkcija XLOOKUP uvodi se u Office 365 od studenog 2019. Joe McDaid iz Excelovog tima dizajnirao je XLOOKUP kako bi objedinio ljude koji koriste VLOOKUP i ljude koji koriste INDEX / MATCH. Ovaj odjeljak raspravljat će o 12 prednosti XLOOKUP-a:
- Točno podudaranje je zadana vrijednost.
- Treći argument VLOOKUP-a zasnovan na cijelim brojevima sada je odgovarajuća referenca.
- IFNA je ugrađena za rukovanje vrijednostima koje nedostaju.
- XLOOKUP nema problema s odlaskom na lijevu stranu.
- Pronađite sljedeće manje ili sljedeće veće podudaranje bez sortiranja tablice.
- XLOOKUP može raditi HLOOKUP.
- Pronađite posljednje podudaranje pretraživanjem od dna.
- Zamjenski znakovi su po defaultu "isključeni", ali možete ih ponovno uključiti.
- Vratite svih 12 mjeseci u jednoj formuli.
- Može vratiti referencu na ćeliju ako je XLOOKUP pored dvotačke kao što je XLOOKUP (); XLOOKUP ()
- Može napraviti dvosmjernu utakmicu kao što to može INDEX (, MATCH, MATCH).
- Može sažeti sva pretraživanja u jednoj formuli kao što je LOOKUP.
Evo sintakse: = XLOOKUP (Lookup_Value, Lookup_Array, Results_Array, (if_not_found), (match_mode), (search_mode)).
XLOOKUP Pogodnost 1: Točno podudaranje prema zadanim postavkama
99% mojih formula VLOOKUP-a završava se na, FALSE ili, 0 da označi točno podudaranje. Ako uvijek koristite verziju VLOOKUP-a s točnim podudaranjem, možete započeti isključivanje match_mode funkcije XLOOKUP.
Na sljedećoj slici tražite W25-6 iz ćelije A4. Taj predmet želite potražiti u L8: L35. Kada se pronađe, želite odgovarajuću cijenu iz stupca N. Nije potrebno navesti False kao match_mode jer XLOOKUP zadane vrijednosti točno odgovaraju.

Prednost XLOOKUP-a 2: Rezultat_Array je referenca umjesto cijelog broja
Razmislite o formuli VLOOKUP koju biste koristili prije XLOOKUP-a. Treći argument bi bio oznaka 3 koja ukazuje na to da želite vratiti 3. stupac. Uvijek je postojala opasnost da bi nesretni suradnik umetnuo (ili izbrisao) stupac u vašu tablicu. S dodatnim stupcem u tablici, VLOOKUP koji je vraćao cijenu počeo bi vraćati opis. Budući da je XLOOKUP ukazivao na referencu ćelije, formula se prepisuje kako bi nastavila ukazivati na cijenu koja je sada u stupcu O.

XLOOKUP Prednost 3: IFNA je ugrađen kao neobavezni argument
Užasna pogreška # N / A vraća se kada vaša vrijednost pretraživanja nije pronađena u tablici. U prošlosti, da biste zamijenili # N / A nečim drugim, morali biste koristiti IFERROR ili IFNA omotane oko VLOOKUP-a.

Zahvaljujući prijedlogu Rica na mom YouTube kanalu, tim programa Excel ugradio je neobavezni četvrti argument za if_not_found. Ako želite zamijeniti greške # N / A s nulom, jednostavno dodajte 0 kao četvrti argument. Ili biste mogli upotrijebiti neki tekst, poput "Vrijednost nije pronađena".

XLOOKUP Prednost 4: Nema problema s lijevom stranom ključnog polja
VLOOKUP ne može gledati lijevo od polja ključa bez pribjegavanja VLOOKUP-u (A4, CHOOSE ((1,2), G7: G34, F7: F34), 2, False). S XLOOKUP-om nema problema s nizom rezultata_lijevo od niza Lookup_računa.

XLOOKUP Prednost 5: Sljedeće manje ili sljedeće veće podudaranje bez sortiranja
VLOOKUP je imao mogućnost traženja točnog podudaranja ili samo manje vrijednosti. Četvrti argument možete izostaviti iz VLOOKUP-a ili False promijeniti u True. Da bi ovo funkcioniralo, tablicu pretraživanja trebalo je sortirati u uzlaznom slijedu.

Ali VLOOKUP nije imao mogućnost vratiti točno podudaranje ili sljedeću veću stavku. Za to ste morali prijeći na upotrebu MATCH-a s -1 kao match_mode i morali ste biti oprezni da bi se tablica pretraživanja sortirala silazno.
Neobvezni peti argument XLOOKUP-a match_mode može tražiti samo točno podudaranje, jednako ili samo manje, jednako ili samo veće. Imajte na umu da vrijednosti u XLOOKUP-u imaju više smisla nego u MATCH-u:
- -1 pronalazi vrijednost jednaku ili samo manju
- 0 pronaći točno podudaranje
- 1 pronalazi vrijednost jednaku ili samo veću.
Ali, najnevjerojatniji dio: tablicu pretraživanja ne mora se sortirati i bilo koji match_mode će raditi.
Ispod, match_mode od -1 pronađi sljedeću-manju stavku.

Ovdje, match_mode of 1, pronalazi koje je vozilo potrebno, ovisno o broju ljudi u stranci. Imajte na umu da se tablica pretraživanja ne razvrstava po putnicima, a naziv vozila nalazi se s lijeve strane tipke.

Tablica kaže:
- Autobus prima 64 osobe
- Automobil ima 4 osobe
- Motocikl ima 1 osobu
- Tour Van ima 12 ljudi
- Kombi ima 6 osoba.
Kao bonus, podaci se sortiraju prema vozilu (u starom rješenju, pomoću MATCH, tablica bi se trebala sortirati silazno prema kapacitetu. Također: Vozilo je lijevo od kapaciteta.
XLOOKUP Prednost 6: Bočno XLOOKUP zamjenjuje HLOOKUP
Lookup_array i results_array mogu biti vodoravni s XLOOKUP-om, što olakšava zamjenu HLOOKUP-a.

XLOOKUP Benefit 7: Potražite najnovije podudaranje odozdo
Imam stari video na YouTubeu kako odgovaram na pitanje s britanske farme konja. Imali su vozni park. Svaki put kad bi vozilo ušlo po gorivo ili servis, oni su u proračunsku tablicu upisali vozilo, datum i kilometražu. Željeli su pronaći najnoviju poznatu kilometražu za svako vozilo. Iako bi MAXIF-ovi iz razdoblja Excel-2017 ovo mogli riješiti danas, rješenje prije mnogo godina bila je tajna formula koja je koristila LOOKUP i uključivala je dijeljenje s nulom.
Danas, neobavezni šesti argument XLOOKUP-a omogućuje vam da odredite da pretraživanje treba započeti s dna skupa podataka.

Bilješka
Iako je ovo veliko poboljšanje, omogućuje vam samo pronalazak prvog ili zadnjeg podudaranja. Neki su se ljudi nadali da će vam ovo omogućiti da pronađete drugo ili treće podudaranje, ali to nije namjera argumenta search_mode.
Oprez
Gornja slika pokazuje da postoje načini pretraživanja pomoću starog binarnog pretraživanja. Joe McDaid ne savjetuje upotrebu ovih. Prvo, poboljšani algoritam pretraživanja iz 2018. godine dovoljno je brz da nema značajne koristi od brzine. Drugo, riskirate da nesretni suradnik sortira tablicu za pretraživanje i uvede pogrešne odgovore.
Prednost XLOOKUP-a 8: Zamjenski znakovi su "isključeni" prema zadanim postavkama
Većina ljudi nije shvatila da VLOOKUP tretira zvjezdicu, upitnik i tildu kao zamjenske znakove kao što je opisano u "# 51 Upotreba zamjenskog znaka u VLOOKUP-u" na stranici 143. S XLOOKUP-om, zamjenski znakovi su isključeni prema zadanim postavkama. Ako želite da XLOOKUP tretira ove znakove kao zamjenski znak, upotrijebite 2 kao Match_Mode.

XLOOKUP Pogodnost 9: Vratite svih 12 mjeseci u jednu formulu!
Ovo je stvarno prednost Dynamic Arrays, ali to je moj omiljeni razlog da volim XLOOKUP. Kad u pretraživanju morate vratiti svih 12 mjeseci, jedna formula unesena u B6 s pravokutnim nizom return_array vratit će više rezultata. Ti će se rezultati preliti u susjedne stanice.
Na donjoj slici, jedna formula unesena u B7 vraća svih 12 odgovora prikazanih u B7: M7.

Prednost XLOOKUP-a 10: Može vratiti referencu na ćeliju ako je u blizini debelog crijeva
Ovaj je složen, ali lijep. U prošlosti je bilo sedam funkcija koje bi se promijenile od vraćanja vrijednosti stanice do vraćanja reference stanice ako funkcija dodiruje dvotočku. Primjer pogledajte Upotreba A2: INDEX () kao nehlapljivi pomak. XLOOKUP je osmica funkcija koja nudi ovo ponašanje, pridružujući se IZBORI, IF, IFS, INDEKS, INDIRECT, OFFSET i SWITCH.
Razmotrite sljedeću sliku. Netko odabere Cherry u E4 i Fig u E5. Želite formulu koja će zbrojiti sve od B6 do B9.

Na gornjoj slici možete vidjeti da će XLOOKUP E4 vratiti 15 iz ćelije B6. XLOOKUP E5 vratit će 30 s B9. Međutim, ako dvije XLOOKUP funkcije uzmete iz ćelija D9 i D10 i složite ih s dvotačkom, ponašanje XLOOKUP-a se mijenja. Umjesto da vrati 15, prvi XLOOKUP vraća adresu ćelije B6!
Da bih to dokazao, odabrao sam D7 i koristio Formule, procijeni formulu. Nakon dva puta pritiska na Evaluate, sljedeći dio koji se izračunava je XLOOKUP ("Trešnja", A4: A29, B4: B29), kao što je ovdje prikazano.

Pritisnite Evaluate ponovno i nevjerojatno, formula XLOOKUP vraća $ B $ 6 umjesto 15 spremljenih u B6. To se događa jer odmah iza ove XLOOKUP formule postoji dvotočka.

Pritisnite Evaluate još dva puta, a privremena formula bit će = SUM (B6: B9).

Ovo je nevjerojatno ponašanje za koje većina ljudi ne zna. Excel MVP Charles Williams kaže mi da ga se može pokrenuti bilo kojim od ova tri operatora uz XLOOKUP:
- Debelo crijevo
- Prostor (operater križanja)
- Zarez (operater Unije)
XLOOKUP pogodnost 11: Dvosmjerna utakmica poput INDEKSA (, UTAKMICA, UTAKMICA)
Za sve moje prijatelje VLOOKUP-a, INDEX / MATCH ljudi su čekali da vide mogu li XLOOKUP podnijeti dvosmjernu utakmicu. Sjajne vijesti: može to učiniti. Loše vijesti: metodologija je malo drugačija nego što bi INDEX / MATCH fanovi očekivali. Moglo bi im biti malo iznad glave. Ali siguran sam da mogu doći do ove metode.
Za dvosmjernu utakmicu želite pronaći koji redak sadrži broj računa A621 prikazan u J3. Dakle, XLOOKUP započinje dovoljno jednostavno: = XLOOKUP (J3, A5: A15. Ali tada morate navesti result_array. Možete koristiti isti trik kao u XLOOKUP Benefit 9: Vratite svih 12 mjeseci u jednoj formuli gore, ali upotrijebite ga za vraćanje okomitog vektora. Unutarnji XLOOKUP traži mjesec J4 u naslovima mjeseca u B4: G4. Niz_vrata_određen je kao B5: G15. Rezultat je da unutarnji XLOOKUP vraća niz poput prikazanog u I10. : I20 u nastavku. Budući da se A621 nalazi u petoj ćeliji niza pretraživanja_, a 104 nalazi se u petoj ćeliji niza rezultata_, iz formule dobivate točan odgovor. Ispod J6 pokazuje stari način. J7 vraća novi način.

Prednost XLOOKUP-a 12: Zbroj svih vrijednosti pretraživanja u jednu formulu
Drevna funkcija LOOKUP nudila je dva čudna trika. Prvo, ako pokušavate dokučiti ukupan iznos dodatnih troškova koji se prikupljaju, možete zatražiti da LOOKUP traži sve vrijednosti u jednoj formuli. Na donjoj slici LOOKUP (C4: C14 vrši 11 pretraživanja. Ali funkcija LOOKUP nije ponudila točno podudaranje i tražila je sortiranje tablice pretraživanja.

Pomoću XLOOKUP-a možete odrediti raspon jer će lookup_value i XLOOKUP vratiti sve odgovore. Prednost je u tome što XLOOKUP može točno podudarati.

Bonus savjet: Što je s Twisted LOOKUP-om?
Excel MVP Mike Girvin često pokazuje trik funkcije LOOKUP gdje je Lookup_Vector okomit, a Result_Vector vodoravni. XLOOKUP neće podržati ovaj trik. Ali, ako malo prevarite i zamotate result_array u funkciju TRANSPOSE, možete upravljati uvrnutim pretraživanjem.
