Kako koristiti formulu INDEX-MATCH u Excelu za generiranje više rezultata

  • Podijeli Ovo
Hugh West

Dok rad s velikim brojem podataka dovodi do stvaranja višestrukih rezultata. U Excelu postoji vrlo prikladan način izdvajanja više rezultata. U ovom ćemo vam članku pokazati kako koristiti INDEX-MATCH formulu u Excelu za generiranje više rezultata.

Preuzmite predložak za vježbu

Ovdje možete preuzeti besplatni Excel predložak za vježbanje i vježbati sami.

INDEX MATCH Multiple Results.xlsx

4 korisna načina za implementaciju INDEX & Funkcije MATCH zajedno u programu Excel za izdvajanje više rezultata

Ovaj odjeljak će detaljno raspravljati o korištenju funkcije INDEX i funkcije MATCH zajedno u programu Excel za dobiti više rezultata.

1. Pronađite više rezultata u nizu pomoću formule INDEX MATCH u Excelu

Razmotrite sljedeći skup podataka, gdje smo željeli pronaći različite ocjene studenata na različitim ispitima.

To možemo dobiti pokretanjem formule INDEX-MATCH na našem radnom listu.

Koraci za pronalaženje višestrukih rezultata u skupu niza pomoću INDEX-MATCH funkcije su dane u nastavku.

Koraci:

  • Odaberite naziv iz skupa podataka ( B5:B11 ) i stavite ime u drugoj ćeliji za kasnije korištenje referentnog broja ćelije (npr. ime Villiers u ćeliji G4 ).
  • U drugoj ćeliji koju želite kao svoju ćeliju rezultata ( npr. ćelija G7 ), upišiteZaključak

    Ovaj je članak detaljno objasnio kako koristiti funkcije INDEX MATCH za izdvajanje više rezultata u Excelu. Nadam se da vam je ovaj članak bio od velike koristi. Slobodno pitajte ako imate pitanja u vezi s temom.

    sljedeća formula,
=INDEX($C$5:$C$11,SMALL(IF(ISNUMBER(MATCH($B$5:$B$11,$G$4,0)),MATCH(ROW($B$5:$B$11),ROW($B$5:$B$11)),""),ROWS($A$1:A1)))

Ovdje,

$C$5:$C$11 = polje za pretraživanje vrijednosti traženja

$B$5:$B$11 = polje u kojem je vrijednost traženja

  • Pritisnite Enter .

Primijetit ćete da je rezultat za podatke (npr. Villiers ) koje ste stavili u odabranu ćeliju ( G4 ), pojavit će se u ćeliji rezultata (npr. 65 u G7 ).

  • Sada povucite red prema dolje za Fill Handle da biste dobili ostatak svojih rezultata iste vrijednosti traženja.

Budući da ovaj proces nije konstantan za bilo koju određenu vrijednost, tako da možete odaberite bilo koji podatak za traženje u odabranoj ćeliji (npr. G4 ) i rezultat za taj određeni podatak bit će automatski ažuriran u ćeliji rezultata (npr. G7 ).

Da biste razumjeli više, pogledajte gif u nastavku.

Raščlamba formule:

Razložimo formulu da bismo razumjeli kako smo dobili rezultat.

  • MATCH($B$5:$B$11, $G$4, 0) postaje,

-> MATCH({“Flintoff”; “ Ronaldo”; “Plessis”; “Villiers”; “Beckham”; “Villiers”; “Plessis”}, “Villiers”, 0)

-> Izlaz: {#N/A; #N/A; #N/A; 1; #N/A; 1; #N/A}

Objašnjenje: Ako vrijednost pretraživanja pronađe podudaranje u nizu pretraživanja, tada funkcija MATCH vraća 1 , inače vraća #N/A .

  • ISNUMBER(MATCH($B$5:$B$11, $G$4, 0) postaje,

-> ISNUMBER({#N/A; #N/A; #N/A; 1; #N/A; 1; #N/A})

-> Izlaz: {FALSE; LAŽNO; LAŽNO; PRAVI; LAŽNO; PRAVI; FALSE}.

Objašnjenje: Kako funkcija IF ne može obraditi vrijednosti pogreške, stoga se koristi funkcija ISNUMBER ovdje za pretvaranje vrijednosti polja u Booleove vrijednosti.

  • IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B $5:$B$11), ROW($B$5:$B$11)), “”) postaje,

-> IF({FALSE; FALSE; FALSE ; TRUE; FALSE; TRUE; FALSE}, MATCH(ROW($B$5:$B$11), ROW($B$5:$B$11)), “”)

postaje

-> IF({FALSE; FALSE; FALSE; TRUE; FALSE; TRUE; FALSE}, {1; 2; 3; 4; 5; 6; 7}, “”)

-> Izlaz: {“”; “”; “”; 4; “”; 6}

Objašnjenje: Prvo, funkcija IF pretvara Booleove vrijednosti u brojeve redaka i praznine. Kasnije, funkcije MATCH i the ROW izračunavaju niz s uzastopnim brojevima, od 1 do n, gdje je n zadnji numerički identitet ukupne veličine raspona ćelija. Kako $B$5:$B$11 ima 7 vrijednosti, tako niz postaje {1; 2; 3; 4; 5; 6; 7} .

  • SMALL(IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B$5: $B$11), ROW($B$5:$B$11)), “”), ROWS($A$1:A1))) postaje

-> MALO({“”; “”; “”; 4; “”; 6}, REDOVI($A$1:A1))

-> MALO({“”; “”; “”; 4; “”; 6}, 1)

-> Izlaz: 4

Objašnjenje: Prvo, funkcija SMALL određuje koju vrijednost treba dobiti na temelju broja retka. Zatim, funkcija Reci vraća broj koji se mijenja svaki put kada se ćelija kopira i zalijepi u ćelije ispod. U početku je vratio 4 prema našem skupu podataka. U sljedećoj ćeliji ispod, ROWS($A$1:A1) mijenja se u ROWS($A$1:A2) i vraća 6 .

  • INDEX($C$5:$C$11, SMALL(IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B$5: $B$11), ROW($B$5:$B$11)), “”), ROWS($A$1:A1))) postaje

-> INDEX($C$5:$C$11, 4)

-> Izlaz: 65

Objašnjenje: INDEX funkcija vraća vrijednost iz danog polja na temelju broja retka i stupca. 4. vrijednost u nizu $C$5:$C$11 je 65 , tako da funkcija INDEX vraća 65 u ćeliji G7 .

Pročitajte više: IF s INDEX-MATCH u Excelu (3 prikladna pristupa)

2. Pronađite višestruke rezultate naziva nadolazećeg događaja & Datum pomoću formule INDEX MATCH u Excelu

Ponekad zaboravimo na datum važnih događaja. U tom slučaju, funkcije INDEX MATCH rade kao spasioci.

U nastavku je primjer podataka gdje smo željeli znati nadolazeći rođendan među našim prijateljima.

Dakle, ono što smo učinili jest implementacija formule INDEX MATCH kako bismo saznali čiji je sljedeći rođendan i kada je to.

Dakle, formula zaznati ime osobe ili naziv nadolazećeg događaja je,

=INDEX($B$5:$B$9,MATCH(F5,$C$5:$C$9,1)+1)

I formula za saznavanje datuma nadolazećeg događaja je,

=INDEX($C$5:$C$9,MATCH(F5,$C$5:$C$9,1)+1)

Razdvajanje formule:

Razdvojimo formulu da bismo razumjeli kako smo saznali ime Alex i datum njegovog rođendana.

  • MATCH(F5,$C$5:$C$9,1)

-> Izlaz: 4

Objašnjenje: Funkcija MATCH pronalazi položaj tražene vrijednosti ( Ćelija F5 = Četvrtak, 11. studenog 2021. ) u konstanti polja ( $C$5:$C$9 = popis datuma ) .

U ovom primjeru nismo htjeli točno podudaranje, htjeli smo da funkcija MATCH vrati približno podudaranje, pa smo treći argument postavili na 1 (ili TRUE ).

  • INDEX($B$5:$B$9,MATCH(F5,$C$5:$C$9,1)+1 ) postaje

-> INDEX($B$5:$B$9, 4) +1)

-> Izlaz: Alex /(Ime događaja)

Objašnjenje: Funkcija INDEX uzima dva argumenta za vratiti određenu vrijednost u jednodimenzionalnom rasponu. Ovdje je raspon $B$5:$B$9 prvi argument i rezultat koji smo dobili iz izračuna u prethodnom odjeljku (MATCH(F5,$C$5:$C$9, 1)) , pozicija 4 , je drugi argument. To znači da tražimo vrijednost koja se nalazi na poziciji 4 u $B$5:$B$9 raspon.

I,

  • INDEX($C$5:$C$9,MATCH(F5,$C$5:$C$9,1)+1) postaje

-> INDEX($B$5:$B$9, 4) +1)

-> Izlaz: Utorak, 7. prosinca 2021.

Objašnjenje: Funkcija INDEX uzima dva argumenta za vraćanje određene vrijednosti u jednodimenzionalnom rasponu. Ovdje je raspon $C$5:$C$9 prvi argument i rezultat koji smo dobili iz izračuna u prethodnom odjeljku (MATCH(F5,$C$5:$C$9, 1)) , pozicija 4 , je drugi argument. To znači da tražimo vrijednost koja se nalazi na poziciji 4 u rasponu $C$5:$C$9 .

Da bismo dobili datum nadolazećeg događaja, upravo smo dodali jedan na položaj ćelije koji je vratila funkcija MATCH i dao nam je položaj ćelije za datum sljedećeg događaja.

Pročitajte više: Excel INDEX -FORMULA MATCH za vodoravno vraćanje višestrukih vrijednosti

Slična očitanja

  • INDEX MATCH Višestruki kriteriji sa zamjenskim znakom u Excelu (Kompletan vodič)
  • [Riješeno!] INDEX MATCH ne vraća ispravnu vrijednost u Excelu (5 razloga)
  • Kako koristiti INDEX MATCH umjesto VLOOKUP-a u Excelu (3 načina)
  • INDEX+MATCH s dupliciranim vrijednostima u Excelu (3 brze metode)
  • Kako odabrati određene podatke u Excelu (6 Metode)

3. Generirajte više rezultata u zasebne stupce pomoću formule INDEX MATCH u programu Excel

Do sada smodobivao rezultate redom. Ali što ako želite dobiti rezultate u zasebnim stupcima .

Razmotrite sljedeći skup podataka koji se sastoji od tri vrste zanimanja koja predstavljaju više imena ljudi.

Htjeli smo napraviti grupu ljudi na temelju profesije i željeli smo postaviti imena po stupcima prema njihovoj profesiji.

Da izdvojimo više podudaranje rezultata u zasebne ćelije u zasebnim stupcima, možete izvesti mali trik s funkcijom INDEX .

Naučimo kako izdvojiti višestruke rezultate podudaranja u više stupaca u Excelu kombinacijom INDEX funkcije i druge.

Koraci:

  • Odaberite zanimanje iz raspona podataka ( B5:B11 ) i stavite podatke u drugu ćeliju da biste kasnije upotrijebili referentni broj ćelije (npr. zanimanje Igrač kriketa u ćeliji E5 ).
  • U drugoj ćeliji koju želite kao svoju ćeliju rezultata (npr. ćelija F5 ), napišite sljedeću formulu,
=IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=$E5,ROW(C5:C11)-MIN(ROW(C5:C11))+1),COLUMNS($E$5:E5))),"")

ovdje,

$C$5:$C$11 = ar zraka za pretraživanje tražene vrijednosti

$B$5:$B$11 = niz u kojem je tražena vrijednost

  • Pritisnite Enter .

Primijetit ćete da rezultat za podatke (npr. Cricketers ) koje ste stavili u odabranu ćeliju ( E5 ), pojavit će se u ćeliji rezultata (npr. Flintoff u Cell F5 ).

  • Sada povucite red okolo Ručica za popunjavanje da biste dobili ostatak svojih rezultata te iste vrijednosti traženja u zasebnim višestrukim stupcima.

  • Opet povucite redajte prema Full Handle da biste dobili ostatak svojih rezultata različitih vrijednosti pretraživanja (npr. Nogometaš, Hrvači ) u zasebnim više stupaca.

Razdvajanje formule:

Razložimo formulu da bismo razumjeli kako smo dobili rezultat.

  • SMALL(IF ($B$5:$B$11=$E5,RED($C$5:$C$11)-MIN(RED($C$5:$C$11))+1),STUPCI($E$5:E5))

Iz prethodne rasprave već znamo kako funkcije SMALL, IF i ROW rade zajedno, a mi i ovdje koristimo taj trik za generiranje broj retka koji odgovara N-tom podudaranju. Kada imamo broj retka, jednostavno ga prosljeđujemo u funkciju INDEX koja vraća vrijednost u tom retku.

-> Izlaz: ( kao na slici ispod )

  • INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11) =$E5,RED($C$5:$C$11)-MIN(RED($C$5:$C$11))+1),STUPCI($E$5:E5))) -> prosljeđivanje brojeva redaka funkciji INDEX za izdvajanje vrijednosti za odgovarajuće brojeve redaka.

-> Izlaz: ( kao na slici ispod )

  • IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=) $E5,RED(C5:C11)-MIN(RED(C5:C11))+1),STUPCI($E$5:E5))),””) -> primijetite da kada stupci vrate vrijednost koja ne postoji, onaizbacuje pogrešku #NUM . Kako bismo spriječili pogrešku, omotamo cijelu formulu funkcijom IFERROR za hvatanje pogrešaka i postavimo prazan niz (“”) kao povrat.

-> Izlaz: ( kao na slici ispod )

Pročitajte više: Excel INDEX MATCH za vraćanje višestrukih vrijednosti u jednoj ćeliji

4. Izdvojite više rezultata u zasebne retke pomoću funkcija INDEX MATCH u Excelu

Ako se pitate o izdvajanju više rezultata u više redaka na isti način kao u našem prethodnom odjeljku, onda je formula,

=IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=E$4,ROW(C5:C11)-MIN(ROW(C5:C11))+1),ROWS($E$5:E5))),"")

I svi ostali detalji kao što su koraci i raščlamba formule isti su kao u odjeljku 3.

Ključne točke koje morate imati na umu

  • Kao raspon niza podatkovne tablice za traženje vrijednosti je fiksna, ne zaboravite staviti znak dolar ($) ispred referentnog broja ćelije tablice polja.
  • Kada radite s vrijednostima polja, ne zaboravite pritisnuti Ctrl + Shift + Enter na tipkovnici rd tijekom izvlačenja rezultata. Pritisak samo na Enter radit će samo kada koristite Microsoft 365 .
  • Nakon što pritisnete Ctrl + Shift + Enter , primijetit ćete da traka formule zatvorila je formulu u vitičaste zagrade {} , deklarirajući je kao formulu polja. Nemojte sami upisivati ​​te zagrade {} , Excel to automatski radi umjesto vas.

Hugh West vrlo je iskusan Excel trener i analitičar s više od 10 godina iskustva u industriji. Diplomirao je računovodstvo i financije te magistrirao poslovno upravljanje. Hugh ima strast za podučavanjem i razvio je jedinstveni pristup podučavanju koji je lako pratiti i razumjeti. Njegovo stručno poznavanje programa Excel pomoglo je tisućama studenata i profesionalaca diljem svijeta da poboljšaju svoje vještine i postignu uspjeh u karijeri. Putem svog bloga, Hugh dijeli svoje znanje sa svijetom, nudeći besplatne vodiče za Excel i online obuku kako bi pomogao pojedincima i tvrtkama da dostignu svoj puni potencijal.