Kazalo
Excel ponuja različne funkcije in načine za pridobivanje ujemajočih se vrednosti. Glede na situacijo lahko uporabniki izberejo svoje preference. V tem vodniku boste videli, kako pridobiti rezultate z uporabo INDEX MATCH z več ujemanji v Excelu.
Najprej spoznajmo današnji delovni zvezek.
V listih današnjega delovnega zvezka boste našli izdelke in njihovo razmerje med cenami. Z uporabo tega razmerja si bomo ogledali nekaj primerov za pridobivanje vrednosti z več meril .
V resničnem svetu boste morda morali obdelati podatkovne nize z več razmerji in določiti različna merila za pripravo rezultatov. Da bi za zdaj ostali preprosti, bomo pridobili ceno izdelka, ki se ujema z imenom in velikostjo.
Prenesi delovni zvezek za prakso
Delovni zvezek z vsemi formulami, ki je bil uporabljen za predstavitev, lahko prenesete s spodnje povezave.
INDEX-MATCH z več ujemanji.xlsx
Osnove metode INDEX-MATCH
Osnove funkcije INDEX
Funkcija INDEX vrne vrednost ali referenco na vrednost znotraj tabele ali razpona. Uporablja se lahko za pridobivanje posameznih vrednosti ali celotnih vrstic in stolpcev. Oglejmo si sintakso funkcije INDEX.
INDEX(polje/odnos, številka vrstice, številka stolpca, številka območja)
polje ali referenca: Celica ali območje celic, ki jih želite pregledati
številka vrstice: Vrstica v polju, iz katere se vrne vrednost
column_number: Stolpec v polju, iz katerega se vrne vrednost
area_number: izbere območje v referenci, iz katerega vrne presečišče vrstica_številka in . številka_stolpca To je neobvezno polje.
Med pisanjem formule lahko izberete, ali želite zagotoviti številka_vrstice ali številka_stolpca . Če zagotovite številka_vrstice potem je uporaba izbirna. številka_stolpca in obratno.
Ogledate si lahko Microsoftova podpora za podrobnejšo razčlenitev sintakse.
Osnove funkcije MATCH
Praktično je ena od funkcij, ki jo boste pogosteje našli pri INDEX funkcija je funkcija MATCH . MATCH Funkcija se uporablja za iskanje položaja določenega elementa v območju celic. Vrne relativni položaj določenega elementa v območju.
Sintaksa MATCH funkcija je
MATCH(lookup_value, lookup_array, match_type)
lookup_value: Vrednost za iskanje v lookup_array.
lookup_array: Razpon celic, ki se iščejo.
match_type: To je neobvezno polje. Vnesete lahko 3 vrednosti.
1 = Manjša ali enaka vrednosti lookup_value
0 = Natančna_vrednost iskanja
-1 = Večja ali enaka vrednosti lookup_value
Za boljše razumevanje si lahko ogledate Microsoftova podpora spletno mesto.
6 Primerni primeri uporabe formule INDEX-MATCH z več ujemanji
Zdaj bomo te formule in teorije uporabili v našem naboru podatkov. Rešili smo različne scenarije z uporabo INDEX-MATCH z več zadetki v Excelu in jih za boljše razumevanje vključili v različne razdelke. Spremljajte, kako jih lahko uporabimo v različnih scenarijih, če pa vam je ljubši določen, ga lahko najdete v zgornji preglednici.
1. INDEX-MATCH z več merili
Za pridobivanje vrednosti z več meril najprej določite merila. Če želite na primer pridobiti ceno srajce majhne velikosti (v našem delovnem zvezku), morate določiti ime izdelka - Srajca in velikost - Majhna.
V naslednjih korakih si oglejte, kako lahko v Excelu s formulo poiščete indeksno ujemanje s temi več ujemanji.
Koraki:
- Najprej izberite celico G6 .
- Nato zapišite naslednjo formulo.
=INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
🔎 Razčlenitev formule
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
👉
(G4=B5:B15) in . (G5=C5:C15) sta oba pogoja in vrneta bodisi TRUE ali FALSE glede na to, ali sta pogoja resnična ali ne. Številčno sta enaka 1 ali 0. Torej množenje vrne 1, če sta oba pogoja resnična.
👉
MATCH(1,(G4=B5:B15)*(G5=C5:C15),0) vrne položaj, kjer sta oba pogoja resnična. V tem primeru je to 1.
👉
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0)) vrne vrednost v položaju, ki ga je vrnil prejšnji del formule.
- Na koncu pritisnite Vnesite .
Tako lahko v Excelu za več meril ali ujemanj uporabimo INDEX MATCH.
Preberite več: Kako ujemati več meril iz različnih polj v Excelu
2. INDEX-MATCH z več merili pripada vrsticam in stolpcem
V tem razdelku bomo razpravljali o tem, kako izvesti iskanje s preizkušanjem dveh ali več meril v vrstice in stolpci . Morda se zdi nekoliko zapleteno in zapleteno.
V našem primeru smo nekoliko spremenili tabelo, ki je zdaj urejena tako, da vrednosti velikosti (Small, Large, M, XL) predstavljajo posamezne stolpce.
Podobno kot v prejšnjem razdelku nastavite izdelek in zahtevano velikost kot vrednosti meril.
Sledite naslednjim korakom in si oglejte, kako lahko uporabimo formulo za ta razdelek.
Koraki:
- Najprej izberite celico I6 .
- Nato vanj zapišite naslednjo formulo.
=INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0))
🔎 Razčlenitev formule
👉
MATCH(I4,B5:B7,0) vrne natančno ujemanje z vrednostjo I4 v območju B5:B7 .
👉
Podobno, MATCH(I5,C4:F4,0) vrne natančno ujemanje z vrednostjo I5 v območju C4:F4 .
👉
Končno, INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0)) vzame izhod prve funkcije kot številko vrstice in druge funkcije kot številko stolpca ter vrne vrednost, ki je na položaju iz območja C5:F7 .
- Nato pritisnite Vnesite .
Tako lahko uporabimo INDEX-MATCH z več merili, ki pripadajo vrsticam in stolpcem.
Preberite več: Excel Index Ujemanje enega/več meril z enim/več rezultati
Podobna branja
- INDEX MATCH s 3 merili v Excelu (4 primeri)
- INDEX MATCH v več listih v Excelu (z alternativo)
- Vsota s funkcijami INDEX-MATCH pod več merili v Excelu
- Indeksna ujemajoča se vsota več vrstic v Excelu (3 načini)
- Formula INDEX-MATCH za iskanje najmanjše vrednosti v Excelu (4 primerni načini)
3. INDEX-MATCH iz nesorodnih stolpcev
V tem razdelku bomo prikazali primer, kako pridobiti ujemajoče se vrednosti z dvema nesorodnima stolpcema. Poleg tega potrebujemo funkcija IFERROR za ta scenarij.
To bo nabor podatkov za predstavitev.
V teh korakih si oglejte, kako lahko uporabimo INDEX-MATCH za nesorodna stolpca (izdelek in količina) v tem podatkovnem nizu.
Koraki:
- Najprej izberite celico G6 .
- Nato vanj zapišite naslednjo formulo.
=IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Ni vrednosti")
🔎 Razčlenitev formule
IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Ni vrednosti")
👉
MATCH(G5,B4:B7,0) najde natančno ujemanje vrednosti celice G5 v območju B4:B7 .
👉
in . MATCH(F6,B4:D4,0) najde natančno ujemanje z F6 je razpon B4: D4 .
👉
Nato INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)) vzame prvo vrednost funkcije kot številko vrstice in drugo vrednost funkcije kot številko stolpca ter vrne vrednost na tem mestu v območju B4: D7 .
👉
Končno, IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Ni vrednosti") vrne niz "Ni vrednosti", če je pri izvajanju formule prišlo do napake. V nasprotnem primeru vrne običajno vrednost.
- Nato pritisnite Vnesite na tipkovnici.
Tako lahko v Excelu najdemo želeno ujemanje z uporabo funkcije INDEX-MATCH iz nesorodnih stolpcev za izbrana merila, tudi za več meril.
4. INDEX-MATCH iz več preglednic
Za iskanje ujemanj iz več tabel lahko uporabimo INDEX-MATCH Poleg te funkcije bomo potrebovali tudi MALI , ISNUMBER , ROW , COUNTIF in IFERROR tudi funkcije.
V obrazcu primera imamo 2 izdelka trgovine. S tem obrazcem bomo videli, kako opraviti nalogo.
V naslednjih korakih si oglejte, kako lahko kombinacijo teh funkcij skupaj z INDEX-MATCH uporabimo za več ujemanj iz tega niza tabel v Excelu.
Koraki:
- Najprej izberite celico C14 .
- Zdaj zapišite naslednjo formulo.
=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))))
🔎 Razčlenitev 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(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))))
👉
MATCH($B$6:$B$10, $C$12, 0) najde natančno ujemanje z C12 v območju B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) preveri, ali je vrednost v funkciji število.
👉
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$10)) preveri, ali je prejšnja funkcija število ali ne. Če je, potem vrne izhodno vrednost MATCH(VRSTICA($B$6:$B$10), VRSTICA($B$6:$B$10)) ki je položaj, kjer se ujemata niz številk vrstic v prvi in drugi vrstici. ROW V nasprotnem primeru vrne prazen 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)) vrne VRSTICE ($A$1: A1) -ta najmanjša vrednost iz polja.
👉
Končno. 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))) vrne vrednost na tem mestu v območju 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)) naredi enako, vendar iz druge tabele, saj so razponi v tem delu formule očitno drugačni.
👉
Nazadnje celotna funkcija prevzame celotno funkcijo in vrne INDEX-MATCH kombinacije. Vpliv IFERROR če bi se med izvajanjem formule pojavile napake, funkcija ne bi vrnila nobene vrednosti.
- Nato pritisnite Vnesite .
- Nato ponovno izberite celico ter kliknite in povlecite ikono ročaja za zapolnitev navzdol za več celic, da najdete preostale vrednosti iz tabel. Povlečete lahko dodatne celice, Excel bo ustavil vrednosti, ko jih ne bo več.
Tako lahko v Excelu uporabimo funkcijo INDEX-MATCH z uporabo meril iz več tabel.
Preberite več: Več meril v Excelu z uporabo funkcij INDEX, MATCH in COUNTIF
5. INDEX-MATCH iz več delovnih listov
Formulo INDEX-MATCH lahko uporabimo na različnih listih. Tu imamo dve tabeli na dveh različnih delovnih listih.
List Shop 1 za Shop 1 in list Shop 2 za Shop 2.
Da bi dobili rezultat, moramo pred referenco celice navesti le ime lista. Za več podrobnosti sledite tem korakom.
Koraki:
- Najprej izberite celico C14 iz lista "Trgovina 1".
- Nato zapišite naslednjo formulo.
=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))))
🔎 Razčlenitev 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(‘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))))
👉
MATCH($B$6:$B$10, $C$12, 0) išče natančno ujemanje z vrednostjo celice C12 v območju B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) preveri, ali je izhodna vrednost prejšnje funkcije število ali ne. To določa, ali je bilo ujemanje ali ne. To je samo za pretvorbo vrednosti števila v logično vrednost.
👉
Nato IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), "") preveri vrednost boolean in vrne MATCH(VRSTICA($B$6:$B$10), VRSTICA($B$6:$B$10)) če je vrednost resnična. V nasprotnem primeru vrne prazen niz. MATCH(VRSTICA($B$6:$B$10), VRSTICA($B$6:$B$10)) del je niz številk, kjer VRSTICA ($B$6:$B$10) in . VRSTICA ($B$6:$B$10) To je le priročen trik za omejitev skupnega števila vrstic v izbranem razdelku.
👉
Nato, 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) išče VRSTICE ($A$1: A1) -ta najmanjša vrednost iz izhoda programa IF del.
👉
Končno, 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))) vzame izhod prejšnje funkcije kot številko vrstice in VRSTICE ($A$1: A1) kot številko stolpca in vrne vrednost, ki je na tem mestu v območju C6:C10 .
👉
Podobno, 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)), "") naredi enako, vendar iz drugega lista. Ker je ime lista "Trgovina 2", smo ga dodali pred izbiro obsegov/celic. Ni jih treba dodajati listu, na katerem izvajate izračune. Zato tega nismo storili za "Trgovina 1" v prejšnjem delu formule.
👉
Na koncu smo celotno funkcijo dodali v IFERROR Razlog za to je, da se vrne prazno mesto, če se med izvajanjem formule pojavijo napake.
- Na koncu pritisnite Vnesite .
- Zdaj ponovno izberite celico. Nato kliknite in povlecite ikono ročaja za zapolnitev za nekatere celice navzdol (več, kot je predvidena količina izhodne celice, bi moralo biti v redu).
Zato bomo z uporabo funkcije INDEX-MATCH iz več delovnih listov v Excelu poiskali vsa ujemanja.
6. INDEX-MATCH za več meril brez polja
INDEX-MATCH lahko uporabimo tudi za več zadetkov ali meril brez polja. Na primer, vzemimo naslednji nabor podatkov.
Vendar za to najprej potrebujemo pomožni stolpec. Uporabili bomo funkcija CONCATENATE poleg zadevnih funkcij. Za celoten vodnik sledite tem korakom.
Koraki:
- Najprej izberite celico F5 in zapišite naslednjo formulo.
=CONCATENATE(C5,",",D5,",",",E5)
- Nato pritisnite Vnesite .
- Zdaj ponovno izberite celico ter kliknite in povlecite ikono ročaja za zapolnitev na konec stolpca, da ponovite formulo za preostale celice.
- Nato bomo poiskali INDEX-MATCH za vseh 100 v prvotnem naboru podatkov. V ta namen izberite celico, v katero boste shranili vrednost ( H5 v tem primeru).
- Nato vstavite naslednjo formulo.
=INDEX(B5:B19,MATCH("100,100,100",F5:F19,0))
🔎 Razčlenitev formule
👉 MATCH(“100,100,100”,F5:F19,0) išče natančno ujemanje z 100,100,100 v območju F5:F19 .
👉 Potem INDEX(B5:B19,MATCH(“100,100,100”,F5:F19,0)) vrne vrednost v položaju, v katerem se vrednost ujema.
- Na koncu pritisnite Vnesite .
Na ta način lahko v Excelu uporabimo INDEX-MATCH za več meril ali ujemanj brez polja.
Kako vrniti več vrednosti navpično z uporabo formule INDEX-MATCH v Excelu
Če želite s funkcijo INDEX-MATCH navpično vrniti več vrednosti, si oglejmo naslednji primer.
V naslednjih korakih si oglejte, kako lahko to dosežemo za nabor podatkov.
Koraki:
- Najprej izberite celico F5 .
- Drugič, zapišite naslednjo formulo.
=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))),"")
🔎 Razčlenitev formule
👉
VRSTICA ($B$5:$B$14) vrne polje, ki vsebuje številke vrstic v območju B5:B14 .
👉
VRSTICA($B$5:$B$14)-VRSTICA($B$5)+1 vrne razliko med poljem in številko vrstice celice B5 ki je v tem primeru le polje od 1 do 10.
👉
IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1) preveri, kje je vrednost celice E5 je enaka v območju B5:B14 in vrne številko v polju, kjer je true iz prejšnjega polja.
👉
SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1) vrne najmanjše število iz polja.
👉
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))) nato vrne vrednost na tem mestu v območju C5:C14 .
👉
Konč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))),"") poskrbi, da v primeru, da vrednost povzroči napako v formuli, vrne prazen niz.
- Tretjič, pritisnite Vnesite .
- Nato ponovno izberite celico. Na koncu kliknite in povlecite ikono ročice za zapolnitev navzdol za nekaj celic, da dobite vse vrednosti.
Na ta način lahko z uporabo funkcije INDEX-MATCH v Excelu navpično vrnemo več vrednosti.
Preberite več: INDEX MATCH z več kriteriji v drugem listu (2 načina)
Zaključek
To je za danes vse. Poskušali smo vam prikazati nekaj načinov za INDEX MATCH z več ujemanji. Upam, da vam bo to v pomoč. Če se vam zdi kar koli težko razumljivo, lahko komentirate. Lahko nas obvestite o kakršnih koli drugih metodah za to nalogo.
Za več takšnih vodnikov obiščite Exceldemy.com .