Sisukord
Excel pakub erinevaid funktsioone ja viise sobivate väärtuste hankimiseks. Sõltuvalt olukorrast saavad kasutajad valida oma eelistusi. See õpetus näitab, kuidas saada tulemusi kasutades INDEX MATCH mitme kokkulangevusega Excelis.
Kõigepealt tutvume tänase töövihikuga.
Tänase töövihiku lehtedelt leiate tooted ja nende hinnasuhte. Seda suhet kasutades näeme paar näidet, kuidas tuua väärtus koos mitu kriteeriumi .
Reaalses maailmas võib tekkida vajadus käsitleda mitmest suhtest koosnevaid andmekogumeid ja seada tulemuste saamiseks erinevaid kriteeriume. Et asi oleks esialgu lihtne, otsime välja nime ja suuruse järgi sobiva Toote hinna.
Lae alla praktiline töövihik
Allpool olevalt lingilt saate alla laadida demonstratsiooniks kasutatud töövihiku koos kõigi valemitega.
INDEX-MATCH koos mitme vastega.xlsx
INDEX-MATCHi põhitõed
INDEX-funktsiooni põhitõed
Funktsioon INDEX tagastab väärtuse või viite väärtusele tabelis või vahemikus. Seda saab kasutada üksikute väärtuste või tervete ridade ja veergude saamiseks. Vaatame funktsiooni INDEX süntaksit.
INDEX(array/reference, row_number, column_number,area_number)
massiiv või viide: Vaadeldav lahter või lahtrite vahemik
row_number: Rida massiivi, millest väärtus tagastatakse.
column_number: Massiivi veerg, millest väärtus tagastatakse.
area_number: Valib vahemiku viites, millest tagastatakse ristmik ja row_num ja column_num See on vabatahtlik väli.
Valemi kirjutamise ajal saate valida, kas esitada row_number või column_number Kui te annate row_number siis on vabatahtlik kasutada column_number ja vastupidi.
Saate vaadata Microsofti tugi saidi põhjalikuma süntaksi jaotuse jaoks.
MATCH-funktsiooni põhitõed
Praktiliselt üks funktsioon, mida leiad sagedamini koos INDEX funktsioon on funktsioon MATCH . MATCH funktsiooni kasutatakse määratud elemendi asukoha leidmiseks lahtrite vahemikus. See tagastab konkreetse elemendi suhtelise asukoha vahemikus.
Süntaks MATCH funktsioon on
MATCH(lookup_value, lookup_array, match_type)
lookup_value: Väärtus, mida otsitakse lookup_array'st.
lookup_array: Vaadeldavate lahtrite vahemik.
match_type: See on vabatahtlik väli. 3 väärtust saab sisestada.
1 = Väiksem või võrdne lookup_value'ga
0 = Exact lookup_value
-1 = Suurem või võrdne lookup_value'ga
Sügavama arusaama saamiseks võite vaadata järgmist teavet Microsofti tugi kohas.
6 Sobivad näited INDEX-MATCH valemi kasutamisest mitme vaste korral
Nüüd rakendame need valemid ja teooriad oma andmestikusse. Oleme lahendanud erinevaid stsenaariume, kasutades INDEX-MATCH mitmete vastetega Excelis ja olen need parema arusaamise huvides lisanud erinevatesse jagudesse. Jälgi, kuidas me neid erinevates stsenaariumides rakendada saame, või kui eelistad konkreetset, leiad selle ülaltoodud tabelist.
1. INDEX-MATCH mitme kriteeriumiga
Väärtuste kättesaamiseks koos mitu kriteeriumi kõigepealt määrake kriteeriumid. Näiteks kui soovite saada väikese suurusega särgi hinda (meie töövihikus), peate määrama Toote nime - Särk ja Suurus - Väike.
Nüüd järgige neid samme, et näha, kuidas saame kasutada valemit, et leida indeksituvastust nende mitme vaste Excelis.
Sammud:
- Kõigepealt valige lahter G6 .
- Seejärel kirjutage üles järgmine valem.
=INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
🔎 Valemi jaotus
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
👉
(G4=B5:B15) ja (G5=C5:C15) on mõlemad tingimused ja tagastavad kas TÕELINE või VALE sõltuvalt sellest, kas tingimused on tõesed või mitte. Numbriliselt on need 1 või 0. Seega annab korrutamine 1, kui mõlemad tingimused on tõesed.
👉
MATCH(1,(G4=B5:B15)*(G5=C5:C15),0) tagastab positsiooni, kus mõlemad tingimused on tõesed. Antud juhul on see 1.
👉
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0)) tagastab väärtuse positsioonis, mille tagastas valemi eelmine osa.
- Lõpuks vajutage Sisesta .
Nii saame kasutada INDEX MATCHi mitme kriteeriumi või vaste jaoks Excelis.
Loe edasi: Kuidas sobitada mitu kriteeriumi erinevatest massiividest Excelis
2. INDEX-MATCH mitme kriteeriumiga kuulub ridadele ja veergudele
Selles jaotises arutame, kuidas teha otsingut, testides kahte või enamat kriteeriumi sisse read ja veerud See võib tunduda veidi keeruline ja keeruline.
Meie näites on tehtud väike muudatus, meie tabel on nüüd paigutatud nii, et suuruse väärtused (Small, Large, M, XL) esindavad üksikuid veerge.
Sarnaselt eelmisele jaotisele määrake kriteeriumide väärtusteks toode ja nõutav suurus.
Järgige neid samme, et näha, kuidas me saame kasutada selle lõigu valemit.
Sammud:
- Kõigepealt valige lahter I6 .
- Seejärel kirjutage sinna järgmine valem.
=INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0))
🔎 Valemi jaotus
👉
MATCH(I4,B5:B7,0) tagastab täpse vaste väärtusele I4 vahemikus B5:B7 .
👉
Samamoodi, MATCH(I5,C4:F4,0) tagastab täpse vaste väärtusele I5 vahemikus C4:F4 .
👉
Lõpuks, INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0)) võtab esimese funktsiooni väljundi rea numbrina ja teise funktsiooni veeru numbrina ning tagastab väärtuse, mis on positsioonis vahemikust C5:F7 .
- Pärast seda vajutage Sisesta .
Seega saame kasutada INDEX-MATCH mitme kriteeriumiga, mis kuuluvad ridadesse ja veergudesse.
Loe edasi: Exceli indeks Sobitamine ühe/mitme kriteeriumi ja ühe/mitme tulemuse vahel
Sarnased lugemised
- INDEX MATCH 3 kriteeriumiga Excelis (4 näidet)
- INDEX MATCH mitme lehe vahel Excelis (alternatiiviga)
- Summa INDEX-MATCH-funktsioonidega mitme kriteeriumi all Excelis
- Indeksi sobitamine mitme rea summa Excelis (3 võimalust)
- INDEX-MATCH-valem Exceli minimaalse väärtuse leidmiseks (4 sobivat viisi)
3. INDEX-MATCH mittekõrvalolevatest veergudest
Selles jaotises näitame teile näite, kuidas otsida sobivaid väärtusi, kasutades kahte mittekõrvalolevat veergu. Lisaks on meil vaja funktsioon IFERROR selle stsenaariumi jaoks.
See on demonstratsiooni andmekogum.
Järgige neid samme, et näha, kuidas me saame kasutada INDEX-MATCH selle andmekogumi mittekõrvalolevate veergude (toode ja summa) puhul.
Sammud:
- Kõigepealt valige lahter G6 .
- Seejärel kirjutage sinna järgmine valem.
=IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "No Value")
🔎 Valemi jaotus
IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "No Value")
👉
MATCH(G5,B4:B7,0) leiab lahtri väärtuse täpse vaste G5 vahemikus B4:B7 .
👉
ja MATCH(F6,B4:D4,0) leiab täpse vaste F6 on vahemik B4:D4 .
👉
Siis INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)) võtab esimese funktsiooni väärtuse rea numbrina ja teise funktsiooni väärtuse veeru numbrina ning tagastab väärtuse selles positsioonis vahemikus B4:D7 .
👉
Lõpuks, IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "No Value") tagastab stringi "No Value", kui valemi täitmisel esineb viga. Vastasel juhul tagastab ta tavalise väärtuse.
- Seejärel vajutage Sisesta klaviatuuril.
Selle tulemusena saame Excelis valitud kriteeriumide, isegi mitme kriteeriumi puhul, soovitud vaste leida INDEX-MATCHi abil mittekõrvalolevatest veergudest.
4. INDEX-MATCH mitmest tabelist
Mitmest tabelist kokkulangevuste leidmiseks saame kasutada funktsiooni INDEX-MATCH Lisaks sellele funktsioonile vajame me ka SMALL , ISNUMBER , ROW , COUNTIF ja IFERROR funktsioonid samuti.
Näidislehel on 2 kaupluse toodet. Selle lehe abil näeme, kuidas seda ülesannet täita.
Järgige neid samme, et näha, kuidas me saame kasutada nende funktsioonide kombinatsiooni koos INDEX-MATCHiga koos mitme vastega sellest tabelite komplektist Excelis.
Sammud:
- Kõigepealt valige lahter C14 .
- Nüüd kirjutage üles järgmine valem.
=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))))
🔎 Valemi jaotus
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) leiab täpse vaste C12 vahemikus B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) kontrollib, kas väärtus on funktsiooni number.
👉
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)) kontrollib, kas eelmine funktsioon on arv või mitte. Kui see on, siis tagastab ta väljundväärtuse MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) mis on positsioon, kus rea numbrite massiivi numbrid sobivad esimeses ja teises ROW Vastasel juhul tagastab see tühja stringi.
👉
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)) tagastab ROWS($A$1:A1) -ndas väikseim väärtus massiivi hulgast.
👉
Lõpuks. 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)))) tagastab väärtuse selles positsioonis vahemikus 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))) teeb sama asja, kuid teisest tabelist, kuna vahemikud on valemi selles osas selgelt erinevad.
👉
Lõpuks võtab kogu funktsioon kogu funktsiooni ja tagastab INDEX-MATCH kombinatsioonid. Mõju IFERROR funktsioon on see, et kui valemi täitmisel esineksid vead, ei tagastaks see mingit väärtust.
- Seejärel vajutage Sisesta .
- Pärast seda valige lahter uuesti ja klõpsake ja lohistage täitekäepidemete ikooni mitu lahtrit alla, et leida ülejäänud väärtused tabelitest. Võite lohistada täiendavaid lahtreid, Excel peatab väärtused, kui neid ei ole enam.
Nii saame kasutada INDEX-MATCHi, kasutades Excelis mitme tabeli kriteeriume.
Loe edasi: Mitu kriteeriumi Excelis, kasutades INDEX, MATCH ja COUNTIF funktsiooni
5. INDEX-MATCH mitmest töölehest
Me võime kasutada valemit INDEX-MATCH erinevate lehtede üle. Siin on meil need kaks tabelit kahel erineval töölehel.
Kaupluse 1 leht kaupluse 1 jaoks ja kaupluse 2 leht kaupluse 2 jaoks.
Tulemuse saamiseks on vaja vaid anda Sheet name enne Cell Reference'i. Järgige neid samme, et saada rohkem üksikasju.
Sammud:
- Kõigepealt valige lahter C14 lehtedelt "Kauplus 1".
- Seejärel kirjutage üles järgmine valem.
=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))))
🔎 Valemi jaotus
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) otsib lahtri väärtuse täpset kokkulangevust. C12 vahemikus B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) kontrollib, kas eelmise funktsiooni väljund on arv või mitte. Mis määrab, kas oli vastavus või mitte. See on lihtsalt arvväärtuse teisendamine boolean'iks.
👉
Siis IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), "") kontrollib boole'i väärtust ja tagastab MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) kui väärtus on tõene. Vastasel juhul tagastab see tühja stringi. MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) osa on numbrite rida, kus RIDA($B$6:$B$10) ja RIDA($B$6:$B$10) sobib. See on lihtsalt mugav trikk, et piirata valitud sektsioonis olevate ridade koguarvu.
👉
Pärast seda, 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) otsib ROWS($A$1:A1) -th väikseim väärtus väljundist. IF osa.
👉
Lõpuks, 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)))) võtab eelmise funktsiooni väljundiks rea numbri ja ROWS($A$1:A1) veeru numbrina ja tagastab väärtuse, mis on selles positsioonis vahemikus C6:C10 .
👉
Samamoodi, INDEX('Kauplus 2'!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH('Kauplus 2'!$B$6:$B$10, $C$12, 0)), MATCH(ROW('Kauplus 2'!$B$6:$B$10), ROW('Kauplus 2'!$B$6:$B$10)), "") teeb sama, kuid teisest lehest. Kuna lehe nimi on "Kauplus 2", siis lisasime selle enne vahemike/rakkude valimist. Neid ei pea lisama lehele, millel arvutusi teete. Seega me ei teinud seda "Kauplus 1" puhul valemi eelmises osas.
👉
Lõpuks oleme lisanud kogu funktsioonile ühe IFERROR Põhjus on see, et tagastada tühik, kui valemi täitmisel esineb vigu.
- Lõpuks vajutage Sisesta .
- Nüüd valige lahter uuesti. Seejärel klõpsake ja lohistage mõne lahtri täitekäepideme ikooni alla (rohkem kui hinnanguline kogus väljundi lahtrile peaks olema hea).
Järelikult leiame kõik vasted, kasutades INDEX-MATCH mitmest Exceli töölehest.
6. INDEX-MATCH mitme kriteeriumi jaoks ilma massiivi kasutamata
Me võime kasutada INDEX-MATCHi ka mitme vaste või kriteeriumi jaoks ilma massiivita. Võtame näiteks järgmise andmekogumi.
Kuid selleks on meil vaja esmalt abisammast. Kasutame selleks funktsioon CONCATENATE lisaks kõnealustele funktsioonidele. Järgige neid samme täieliku juhendi saamiseks.
Sammud:
- Kõigepealt valige lahter F5 ja kirjutage üles järgmine valem.
=CONCATENATE(C5,",",D5,",",E5)
- Seejärel vajutage Sisesta .
- Nüüd valige lahter uuesti ning klõpsake ja lohistage täitekäepideme ikooni veeru lõppu, et korrata valemit ülejäänud lahtritele.
- Järgmisena leiame INDEX-MATCH kõigi algse andmekogumi 100. Selleks valime lahtri väärtuse salvestamiseks ( H5 antud juhul).
- Seejärel sisestage järgmine valem.
=INDEX(B5:B19,MATCH("100,100,100",F5:F19,0))
🔎 Valemi jaotus
👉 MATCH(“100,100,100”,F5:F19,0) otsib täpset vastet 100,100,100 vahemikus F5:F19 .
👉 Siis INDEX(B5:B19,MATCH(“100,100,100”,F5:F19,0)) tagastab väärtuse positsioonis, kus väärtus vastab.
- Lõpuks vajutage Sisesta .
Nii saame kasutada INDEX-MATCHi mitme kriteeriumi või vaste jaoks Excelis ilma massiivi kasutamata.
Kuidas tagastada mitu väärtust vertikaalselt, kasutades INDEX-MATCH valemit Excelis
Kui soovite INDEX-MATCHi abil mitu väärtust vertikaalselt tagasi anda, vaadakem järgmist näidet.
Järgige neid samme, et näha, kuidas me saame seda andmekogumi puhul saavutada.
Sammud:
- Kõigepealt valige lahter F5 .
- Teiseks kirjutage üles järgmine valem.
=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))),"")
🔎 Valemi jaotus
👉
RIDA($B$5:$B$14) tagastab massiivi, mis sisaldab rea numbreid vahemikus B5:B14 .
👉
RIDA($B$5:$B$14)-RIDA($B$5)+1 tagastab massiivi ja lahtri rea numbri vahe. B5 mis antud juhul on lihtsalt massiivi 1 kuni 10.
👉
IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1) kontrollib, kus lahtri väärtus E5 on võrdne vahemikus B5:B14 ja tagastab massiivis oleva arvu, kus see on tõene, eelmisest massiivist.
👉
SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1) tagastab väikseima arvu massiivist.
👉
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)))) siis tagastab väärtuse selles positsioonis vahemikus C5:C14 .
👉
Lõpuks, 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))),"") tagab, et kui väärtus annab valemis vea, tagastab see tühja stringi.
- Kolmandaks, vajutage Sisesta .
- Seejärel valige lahter uuesti. Lõpuks klõpsake ja lohistage täitekäepidemete ikooni mõne lahtri puhul alla, et saada kõik väärtused.
Nii saame Excelis INDEX-MATCHi abil mitu väärtust vertikaalselt tagasi anda.
Loe edasi: INDEX MATCH mitme kriteeriumiga eri lehel (2 võimalust)
Kokkuvõte
See on kõik tänaseks. Oleme proovinud näidata teile paar võimalust INDEX MATCH mitme vaste. Loodan, et see on teile kasulik. Võite vabalt kommenteerida, kui midagi tundub raskesti arusaadav. Olete teretulnud teatama meile mis tahes muudest meetoditest ülesande jaoks.
Rohkem selliseid juhendeid leiate veebilehelt Exceldemy.com .