Sadržaj
Excel nudi različite funkcije i načine za dohvaćanje odgovarajućih vrijednosti. Ovisno o situaciji, korisnici mogu odabrati svoje želje. Ovaj vodič pokazat će vam kako postići rezultate koristeći INDEX MATCH s više podudaranja u Excelu.
Prvo, upoznajmo se s današnjom radnom bilježnicom.
Na listovima današnje radne bilježnice pronaći ćete proizvode i njihov odnos cijena. Korištenjem ovog odnosa vidjet ćemo nekoliko primjera za dohvaćanje vrijednosti s višestrukim kriterijima .
U stvarnom svijetu možda ćete trebati rukovati skupovima podataka nekoliko odnosa i postaviti različite kriterije za dobivanje rezultata. Kako bi zasad bilo jednostavno, dohvatit ćemo cijenu proizvoda koja odgovara nazivu i veličini.
Preuzmite radnu bilježnicu za vježbu
Možete preuzeti radnu bilježnicu korištenu za demonstraciju sa svim formulama s donje veze.
INDEX-MATCH s više podudaranja.xlsx
Osnove INDEX-MATCH
Osnove funkcije INDEX
Funkcija INDEX vraća vrijednost ili referencu na vrijednost unutar tablice ili raspona. Može se koristiti za dohvaćanje pojedinačnih vrijednosti ili bilo kojih cijelih redaka i stupaca. Pogledajmo sintaksu funkcije INDEX.
INDEX(array/reference, row_number, column_number,area_number)
niz ili referenca: Ćelija ili raspon ćelija pogledati
row_number: Redak u nizu iz kojeg se vraćaROW($B$6:$B$10)) ako je vrijednost istinita. Inače, vraća prazan niz. MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) dio je niz brojeva gdje ROW($B$6:$B$10 ) i RED($B$6:$B$10) podudara se. Ovo je samo zgodan trik za ograničavanje ukupnog broja redaka u odabranom odjeljku.
👉
Nakon toga, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12) , 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), “”), ROWS($A$1:A1) traži ROWS($A$1:A1) -ta najmanja vrijednost iz izlaza dijela IF .
👉
Konačno, INDEX($C$6:$C $10, SMALL(IF(ISBROJ(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) , “”), ROWS($A$1:A1))) uzima izlaz prethodne funkcije kao broj retka i ROWS($A$1:A1) kao broj stupca i vraća vrijednost koja je na ovoj poziciji u rasponu C6:C10 .
👉
Slično, INDEX('Trgovina 2'!$C$6:$C$10, SMALL(IF (ISNUMBER(MATCH('Trgovina 2'!$B$6:$B$10, $C$12, 0)), MATCH(ROW('Trgovina 2'!$B$6:$B$10), ROW('Trgovina 2' !$B$6:$B$10)), “”) radi isto, ali s drugog lista. Kako je naziv lista “Trgovina 2”, dodali smo ga prije odabira raspona/ćelija. Ne trebate da ih dodate na list koji radite kal kulacije na. Stoga to nismo učinili za "Trgovina 1" u prethodnom dijelu formule.
👉
Konačno, dodali smo cijelu funkciju u IFERROR funkciju. Therazlog je vraćanje praznog mjesta u slučaju da dođe do pogreške tijekom izvođenja formule.
- Na kraju pritisnite Enter .
- Sada ponovno odaberite ćeliju. Zatim kliknite i povucite ikonu ručke za punjenje za neke ćelije prema dolje (više od procijenjene količine izlazne ćelije bi trebalo biti u redu).
Slijedom toga, pronaći ćemo sve podudaranja koristeći INDEX-MATCH iz više radnih listova u Excelu.
6. INDEX-MATCH za višestruke kriterije bez niza
Također možemo koristiti INDEX-MATCH za više podudaranja ili kriterija bez ikakvih niz. Na primjer, uzmimo sljedeći skup podataka.
Ali prvo nam je potreban pomoćni stupac da to postignemo. Koristit ćemo funkciju CONCATENATE uz dotične funkcije. Slijedite ove korake za potpuni vodič.
Koraci:
- Prvo odaberite ćeliju F5 i zapišite sljedeću formulu.
=CONCATENATE(C5,",",D5,",",E5)
- Zatim pritisnite Enter .
- Sada ponovno odaberite ćeliju i kliknite i povucite ikonu ručke za popunjavanje do kraja stupca kako biste replicirali formulu za ostale ćelije.
- Sljedeće ćemo pronaći INDEX-MATCH za svih 100 u izvornom skupu podataka. Za to odaberite ćeliju za pohranu vrijednosti ( H5 u ovom slučaju).
- Zatim umetnite sljedeću formulu.
=INDEX(B5:B19,MATCH("100,100,100",F5:F19,0))
🔎 RaščlambaFormula
👉 MATCH(“100,100,100”,F5:F19,0) traži točno podudaranje 100,100,100 u rasponu F5: F19 .
👉 Zatim INDEX(B5:B19,MATCH(“100,100,100”,F5:F19,0)) vraća vrijednost na poziciji gdje se vrijednost podudara.
- Na kraju pritisnite Enter .
Na ovaj način možemo koristiti INDEX-MATCH za više kriterija ili odgovara u Excelu bez ikakvog niza.
Kako okomito vratiti više vrijednosti koristeći INDEX-MATCH formulu u Excelu
U slučaju da želite okomito vratiti više vrijednosti koristeći INDEX-MATCH, pogledajmo sljedeći primjer.
Slijedite ove korake da vidite kako to možemo postići za skup podataka.
Koraci:
- Prvo odaberite ćeliju F5 .
- Drugo, zapišite sljedeću formulu.
=IFERROR(INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1))),"")
🔎 Raščlamba formule
👉
ROW($B$5:$B$14) vraća niz koji sadrži brojeve redaka raspona B5:B14 .
👉
ROW($B$5:$B$14)-ROW($B$5) +1 vraća razliku između niza i broja retka ćelije B5 što je u ovom slučaju samo niz od 1 do 10.
👉
IF( $E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1) provjerava gdje je vrijednost ćelije E5 jednaka u rasponu B5:B14 i vraća broj u nizu gdje je istinit od prethodnogniz.
👉
SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW (1:1) vraća najmanji broj iz niza.
👉
INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B) $14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1))) zatim vraća vrijednost na toj poziciji u rasponu C5:C14 .
👉
Konačno, IFERROR(INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:) $B$14)-ROW($B$5)+1),ROW(1:1))),””) osigurava da, ako vrijednost rezultira pogreškom u formuli, vraća prazan niz.
- Treće, pritisnite Enter .
- Zatim ponovno odaberite ćeliju. Na kraju kliknite i povucite ikonu ručke za popunjavanje prema dolje za neke ćelije da biste dobili sve vrijednosti.
Na ovaj način možemo vratiti više vrijednosti okomito koristeći INDEX-MATCH u Excelu.
Pročitajte više: INDEX MATCH s više kriterija na drugom listu (2 načina)
Zaključak
To je sve za danas. Pokušali smo vam pokazati nekoliko načina za INDEX MATCH s multip le utakmice. Nadam se da će vam ovo pomoći. Slobodno komentirajte ako vam se nešto čini teško razumljivim. Slobodno nas obavijestite o svim drugim metodama za zadatak.
Za više ovakvih vodiča posjetite Exceldemy.com .
valuecolumn_number: Stupac u nizu iz kojeg se vraća vrijednost
area_number: Odabire raspon reference iz kojeg se vraća sjecište row_num i column_num . Ovo je izborno polje.
Dok pišete formulu možete odabrati želite li dati row_number ili column_number . Ako navedete row_number onda nije obavezno koristiti column_number i obrnuto.
Možete provjeriti web mjesto Microsoft support za dublju sintaksu raščlamba.
Osnove funkcije MATCH
Praktično, jedna funkcija koju ćete češće naći s funkcijom INDEX je funkcija MATCH . Funkcija MATCH koristi se za lociranje položaja određene stavke u rasponu ćelija. Vraća relativni položaj određene stavke u rasponu.
Sintaksa funkcije MATCH je
MATCH(lookup_value, lookup_array, match_type)
lookup_value: Vrijednost za pretraživanje u lookup_array.
lookup_array: Raspon ćelija koje se pretražuju.
match_type: Ovo je izborno polje. Možete umetnuti 3 vrijednosti.
1 = Manje ili jednako lookup_value
0 = Točna lookup_value
-1 = Veće ili jednako lookup_value
Za dublje razumijevanje, možete provjeriti web mjesto Microsoft support .
6 prikladnih primjera korištenja INDEX-a MATČ Formula saViše podudaranja
Sada ćemo ove formule i teorije staviti u djelo u našem skupu podataka. Riješili smo različite scenarije pomoću INDEX-MATCH s više podudaranja u Excelu i uključili smo ih u različite odjeljke radi boljeg razumijevanja. Pratite kako bismo vidjeli kako ih možemo primijeniti u različitim scenarijima ili ako više volite određeni, možete ga pronaći u gornjoj tablici.
1. INDEX-MATCH s više kriterija
Za dohvaćanje vrijednosti s višestrukim kriterijima prvo postavite kriterije. Na primjer, ako želite dohvatiti cijenu košulje male veličine (u našoj radnoj knjižici), trebate postaviti naziv proizvoda – košulja i veličinu – mala.
Sada slijedite ove korake da vidite kako možemo upotrijebiti formulu za pronalaženje podudaranja indeksa s tim više podudaranja u programu Excel.
Koraci:
- Prvo, odaberite ćeliju G6 .
- Zatim zapišite sljedeću formulu.
=INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
🔎 Raščlamba formule
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5: C15),0))
👉
(G4=B5:B15) i (G5=C5:C15) oba su uvjeti i vraćaju ili TRUE ili FALSE ovisno o tome jesu li uvjeti istiniti ili ne. Numerički, oni su 1 ili 0. Dakle, množenje vraća 1 gdje su oba istinita.
👉
MATCH(1,(G4=B5:B15)*(G5=C5:C15), 0) vraća poziciju na kojoj su oba uvjetapravi. U ovom slučaju, to je 1.
👉
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0)) vraća vrijednost na poziciji koju je vratio prethodni dio formule.
- Na kraju pritisnite Enter .
Ovako možemo koristiti INDEX MATCH za više kriterija ili podudaranja u Excelu.
Pročitajte više: Kako spojiti više kriterija iz različitih nizova u Excelu
2. INDEX-MATCH s više kriterija pripada recima i stupcima
U ovom ćemo odjeljku raspravljati o tome kako izvršiti pretraživanje testiranjem dvaju ili više kriterija u retcima i stupcima . Može se činiti malo lukavim i složenim.
Unosimo malo promjene u naš primjer, naša je tablica sada raspoređena na takav način da vrijednosti veličine (Mala, Velika, M, XL) predstavljaju pojedinačne stupce.
Slično prethodnom odjeljku, postavite proizvod i potrebnu veličinu kao vrijednosti kriterija.
Slijedite ove korake da vidite kako možemo koristiti formulu za ovo odjeljak.
Koraci:
- Prvo odaberite ćeliju I6 .
- Zatim zapišite sljedeću formulu u to.
=INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0))
🔎 Raščlamba formule
👉
MATCH(I4,B5:B7,0) vraća točno podudaranje vrijednosti I4 u rasponu B5:B7 .
👉
Slično, MATCH(I5,C4:F4,0) vraća točno podudaranje vrijednosti I5 u rasponu C4:F4 .
👉
Konačno, INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0)) uzima izlaz prve funkcije kao broj retka, a druge funkcije kao broj stupca i vraća vrijednost koja je na poziciji iz raspona C5:F7 .
- Nakon toga pritisnite Enter .
Dakle, možemo koristiti INDEX-MATCH s više kriterija koji pripadaju recima i stupcima.
Pročitajte više: Podudaranje indeksa programa Excel s jednim/višestrukim kriterijima s jednim/višestrukim rezultatima
Slična očitanja
- PODudaranje INDEKSA s 3 Kriteriji u Excelu (4 primjera)
- INDEX MATCH na više listova u Excelu (s alternativom)
- Zbroj s funkcijama INDEX-MATCH pod više Kriteriji u Excelu
- Indeks podudaranja zbroja više redaka u Excelu (3 načina)
- INDEX-MATCH Formula za pronalaženje minimalne vrijednosti u Excelu (4 Prikladni načini)
3. INDEX-MATCH iz nesusjednih stupaca
U ovom odjeljku, pokazat ćemo vam primjer kako dohvatiti matchi ng vrijednosti koristeći dva nesusjedna stupca. Osim toga, potrebna nam je funkcija IFERROR za ovaj scenarij.
Ovo će biti skup podataka za demonstraciju.
Slijedite ove korake da vidimo kako možemo koristiti INDEX-MATCH za nesusjedne stupce (proizvod i iznos) u ovom skupu podataka.
Koraci:
- Prvo odaberite ćeliju G6 .
- Zatim zapišitesljedeća formula u njemu.
=IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)),"No Value")
🔎 Raščlamba formule
IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)),” Nema vrijednosti”)
👉
MATCH(G5,B4:B7,0) pronalazi točno podudaranje vrijednosti ćelije G5 u rasponu B4:B7 .
👉
i MATCH(F6,B4:D4,0) pronalazi točno podudaranje F6 je raspon B4:D4 .
👉
Zatim INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)) uzima vrijednost prve funkcije kao broj retka i vrijednost druge funkcije kao broj stupca i vraća vrijednost na toj poziciji u rasponu B4:D7 .
👉
Konačno, IFERROR(INDEX (B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)),”No Value”) vraća niz “No Value” ako postoji pogreška tijekom izvođenja formula. U suprotnom, vraća uobičajenu vrijednost.
- Zatim pritisnite Enter na tipkovnici.
Kao rezultat, možemo pronaći željeno podudaranje koristeći INDEX-MATCH iz nesusjednih stupaca za odabrane kriterije, čak i za više njih, u Excelu.
4. INDEX-MATCH iz više tablica
Za pronalaženje podudaranja iz više tablica možemo koristiti formulu INDEX-MATCH . Uz ovu funkciju trebat će nam i funkcije SMALL , ISNUMBER , ROW , COUNTIF i IFERROR .
Na tablici s primjerima imamo 2 proizvoda trgovine. Koristeći ovaj list, vidjet ćemo kakoizvršiti zadatak.
Slijedite ove korake da vidite kako možemo koristiti kombinaciju ovih funkcija zajedno s INDEX-MATCH s više podudaranja iz ovog skupa tablica u Excelu .
Koraci:
- Prvo odaberite ćeliju C14 .
- Sada zapišite sljedeću formulu.
=IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1))), INDEX($F$6:$F$10, SMALL(IF(ISNUMBER(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6:$E$10), ROW($E$6:$E$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
🔎 Raščlamba formule
IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH( ROW($B$6:$B$10), ROW($B$6:$B$10)), “”), ROWS($A$1:A1))), INDEX($F$6:$F$10, SMALL( IF(ISBROJ(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6:$E$10), ROW($E$6:$E$10)), “”) , ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
👉
MATCH($B$6:$B$10, $C$12, 0) pronalazi točno podudaranje C12 u rasponu B6:B10 .
👉
ISNUMBER(MATCH($B $6:$B$10, $C$12, 0)) provjerava je li vrijednost broj u funkciji.
👉
IF(ISNUMBER(MATCH($B$6:$B$10) , $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), “”) ROW($B$6:$B$1 0)) provjerava je li prethodna funkcija broj ili nije. Ako jest, tada vraća izlaznu vrijednost MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) što je pozicija na kojoj je niz retka brojevi se podudaraju u prvoj i drugoj funkciji ROW . U suprotnom, vraća prazan niz.
👉
SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6: $B$10), ROW($B$6:$B$10)),“”), ROWS($A$1:A1)) vraća ROWS($A$1:A1) -tu najmanju vrijednost iz niza.
👉
Konačno. INDEX($C$6:$C$10, SMALL(IF(ISBROJ(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), “”), ROWS($A$1:A1))) vraća vrijednost na toj poziciji u rasponu C6:C10 .
👉
INDEX($F$6:$F$10, SMALL(IF(ISNUMBER(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6: $E$10), ROW($E$6:$E$10)), “”), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))) čini ista stvar, ali iz druge tablice jer su rasponi jasno različiti u ovom dijelu formule.
👉
Konačno, cijela funkcija preuzima cijelu funkciju i vraća INDEX-MATCH kombinacije. Utjecaj funkcije IFERROR je da ako je bilo pogrešaka tijekom izvođenja formule, ona ne bi vratila nikakvu vrijednost.
- Zatim pritisnite Enter .
- Nakon toga ponovno odaberite ćeliju i kliknite i povucite ikonu ručke za popunjavanje prema dolje za više ćelija kako biste pronašli ostale vrijednosti iz tablica. Možete povući dodatne ćelije, Excel će zaustaviti vrijednosti kada ih više nema.
Ovako možemo koristiti INDEX-MATCH koristeći kriterije iz više tablica u Excelu.
Pročitajte više: Višestruki kriteriji u Excelu pomoću funkcije INDEX, MATCH i COUNTIF
5. INDEX-MATCH iz Više radnih listova
Možemo koristiti INDEX-MATCHformula preko različitih listova. Ovdje imamo ove dvije tablice na dva različita radna lista.
Shop 1 list za Shop 1 i Shop 2 list za Shop 2.
Da bismo proizveli rezultat, sve što trebamo učiniti je samo unijeti naziv lista ispred reference ćelije. Slijedite ove korake za više detalja.
Koraci:
- Prvo odaberite ćeliju C14 s lista "Kupovina 1".
- Zatim zapišite sljedeću formulu.
=IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1))), INDEX('Shop 2'!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH('Shop 2'!$B$6:$B$10, $C$12, 0)), MATCH(ROW('Shop 2'!$B$6:$B$10), ROW('Shop 2'!$B$6:$B$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
🔎 Raščlamba formule
IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$) B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), “”), ROWS($A$1:A1))) , INDEX('Trgovina 2'!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH('Trgovina 2'!$B$6:$B$10, $C$12, 0)), MATCH(RED(' Kupnja 2'!$B$6:$B$10), ROW('Trgovina 2'!$B$6:$B$10)), “”), ROWS($A$1:A1)-COUNTIF($B$6:$ B$10, $C$12))
👉
MATCH($B$6:$B$10, $C$12, 0) traži točno podudaranje vrijednosti ćelije C12 u rasponu B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0) ) provjerava je li izlaz prethodne funkcije broj ili nije. Što određuje je li bilo podudaranja ili ne. Ovo je samo za pretvaranje brojčane vrijednosti u Booleovu vrijednost.
👉
Zatim IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($ B$6:$B$10), ROW($B$6:$B$10)), “”) provjerava Booleovu vrijednost i vraća MATCH(ROW($B$6:$B$10),