Kako koristiti INDEX MATCH s više kriterija za raspon datuma

  • Podijeli Ovo
Hugh West

Varijable (kao što su cijena robe, dionica, kamatna stopa, itd.) koje podliježu datumima izazivaju paniku kod ljudi, jer njihove cijene zavise od datuma. INDEX MATCH višestruki kriterijski raspon datuma može izdvojiti cijene iz datog raspona datuma.

Recimo da imamo određene proizvode čije su cijene stabilne u određenom vremenskom periodu. I želimo da INDEKSIRAJU SE cijene za date kriterije.

U ovom članku koristimo više funkcija za INDEKSIRANJE raspon datuma s više kriterija.

Preuzmi Excel radnu knjigu

Raspon datuma s više kriterija.xlsx

3 jednostavna načina za korištenje INDEX MATCH za više kriterija raspona datuma

Metoda 1: korištenje funkcija INDEX MATCH za više kriterija raspona datuma

Želimo izvući cijenu za određeni proizvod na određeni datum. Pretpostavimo da želimo vidjeti cijenu sladoleda na 02-10-22 ( mjesec-dan-godina ). Ako dati datum pada između ponuđenog vremenskog perioda, cijena ćemo izdvojiti u bilo koju praznu ćeliju.

Koraci: Umetnite sljedeću formulu u bilo koju praznu ćeliju (tj., I5 ). Kao formula u formuli niza, pritisnite CTRL+SHIFT+ENTER da biste je primijenili. Formula trenutno vraća cijenu Proizvod ako padne u datom vremenskom periodu (tj. raspon Datum ) kao što je prikazano ispod.

=INDEX($E$5:$E$16,MATCH(1,(($B$5:$B$16=G5)*($D$5:$D$16>=H5)*($C$5:$C$16<=H5)),0))

🔄 Formula Autopsija:

Excel INDEX funkcija pronalazi vrijednost date lokacije unutar zadanog raspona. U našem slučaju koristimo funkciju MATCH induciranu funkcijom INDEX . Funkcija MATCH prosljeđuje svoj rezultat kao broj reda za unose koji zadovoljavaju zadane kriterije. Sintaksa funkcije INDEX je

INDEX(array, row_num, [col_num])

U formuli, $E$5$E$16 se odnosi na argument niz . Unutar funkcije MATCH $B$5:$B$16=G5 , $D$5:$D$16>=H5 i $C$5:$C$16<=H5 deklariraju kriterije. Za bolju identifikaciju bojimo odgovarajuće raspone u pravokutnike.

Funkcija MATCH locira poziciju date vrijednosti unutar red, kolona ili tabela. Kao što smo ranije rekli, dio MATCH prosljeđuje broj reda za funkciju INDEX . Sintaksa funkcije MATCH je

MATCH (lookup_value, lookup_array, [match_type])

Dio MATCH je

=MATCH(1,(($B$5:$B$16=G5)*($D$5:$D$16>=H5)*($C$5:$C$16<=H5)),0)

Dio MATCH dodeljuje 1 kao lookup_value , ($B$5:$B$16=G5)*($D$5:$D$16>=H5)*($C$5:$C$16<=H5) kao lookup_array , a 0 deklarira [match_type] kao potpuno podudaranje.

Korišćena formula MATCH vraća 3 kao što pronađe Sladoled u redu broj 3 .

U slučajevima, imamo više proizvoda za izvlačenje njihove cijene skup podataka. Nekako izgleda kao na sljedećoj slici,

Kombinirana formula INDEX MATCH preuzima Cijene nakon itsargumente koji zadovoljavaju kriterijume. U suprotnom rezultira greškom #N/A kao što je prikazano na gornjoj snimci ekrana.

Pročitajte više: Podudaranje VBA INDEKSA Na osnovu više kriterija u Excelu ( 3 metode)

Metoda 2: XLOOKUP funkcija za rješavanje višestrukih kriterija

Slično kao Metoda 1 , možemo koristiti XLOOKUP funkcija (dostupna samo u Excel 365 ) do INDEX MATCH višestruki kriterijski raspon datuma. Sintaksa funkcije XLOOKUP je

XLOOKUP (lookup, lookup_array, return_array, [not_found], [match_mode], [search_mode])

Koraci: Koristite formulu ispod u ćeliji I5 zatim pritisnite ENTER .

=XLOOKUP(1,(H5>=$C$5:$C$16)*(H5<=$D$5:$D$16)*($B$5:$B$16=G5),$E$5:$E$16,"NotFound")

Formula XLOOKUP vraća uvaženu cijenu koja zadovoljava date kriterije (tj. Proizvod i Datum ) kao što je prikazano na gornjoj slici.

🔄 Autopsija formule:

XLOOKUP dodjeljuje 1 kao svoj lookup argument, (H5>=$C$5:$C$16)*(H5<=$D$5:$D$16)*($B$5:$B$16=G5) kao lookup_array, $E$5:$E$16 kao return_array . Također, formula prikazuje tekst Nije pronađeno u slučaju da unosi ne spadaju u raspon datuma. Dodijeljene kriterije označavamo u pravokutnicima u boji kao što je prikazano na sljedećoj slici.

Za više proizvoda, možete primijeniti formulu XLOOKUP i izdvojiti cijene po zadovoljavanju datih kriterija. Također, formula prikazuje Nije pronađeno ako se dati kriteriji datuma ne prošire unutar datog datumaraspon.

Možete dodati više kriterija nego što je korišteno u formuli. Da bi se dali jednostavni i lucidni scenariji, korišteni su minimalni kriteriji.

Pročitajte više: XLOOKUP s više kriterija u Excelu (4 laka načina)

Metoda 3: Funkcije INDEX i AGREGATE za izdvajanje promjenjive cijene iz raspona datuma

Cijene nekih proizvoda (tj. sirova nafta, valuta, itd.) su toliko promjenjive da fluktuiraju nedeljama ili čak danima. Imamo cijene određenog proizvoda u sedmičnom intervalu. Želimo pronaći cijenu za date datume. Da bismo pronašli cijenu za dati raspon datuma, možemo koristiti kombiniranu funkciju INDEX AGGREGATE . Sintaksa funkcije AGGREGATE je

AGGREGATE (function_num, options, ref1, ref2)

Koraci: Upišite sljedeću formulu u bilo koju praznu ćeliju (tj. , E8 ).

=IFERROR(INDEX(C$5:C$13,AGGREGATE(15,6, ROW(B$5:B$13)/ ((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1,ROWS(E$8:E8))),"")

1. cijena određenog datuma proizvoda 02-15-22 do 02-25-22 je 0,84$ . Može biti dostupna 2. ili 3. cijena, ali u početku se držimo one 1. .

🔄 Formula Autopsy :

U formuli, =IFERROR(INDEX(C$5:C$13,AGGREGATE(15,6, ROW(B$5:B$13)/ ((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1,ROWS(E$8:E8))),"") ;

AGGREGATE(15,6,ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1,ROWS(E$8:E8))) dio daje broj reda za INDEX funkcija. C$5:C$13 je argument array funkcije INDEX .

Unutar formule AGGREGATE ,

(B$5:B$13>=F$4)*(B$5:B$13<=F$5) vraća 1 ili 0 ovisno o tome da li datumi skupa podataka spadaju uraspon ili ne.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5)) vraća niz brojeva redova ovisno o zadovoljavanju kriterija datuma. U suprotnom, rezultira vrijednostima greške.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1 as ref1 rezultira nizom brojeva redova pretvorenih u brojeve indeksa, inače u vrijednosti greške.

ROWS(E$8:E8) kao ref2 rezultira brojem reda i to je jednostavan način da dobijete broj reda dok primjenjujete formulu prema dolje.

Broj 15 = broj_funkcije (tj. MALA ), 6 = opcije (tj. zanemari vrijednosti greške ). Možete odabrati function_num od 19 različitih funkcija i Options od 8 različitih opcija.

Napokon, AGGREGATE(15,6,ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1,ROWS(E$8:E8))) prosljeđuje n-ti najmanji indeksni broj reda koji zadovoljava zadane kriterije.

U slučaju da dođe do bilo kakve greške, IFERROR(INDEX...),"") ignorira sve vrste grešaka i transformiše ih u prazna mesta.

➤ Prevucite ručicu za popunjavanje da biste dohvatili druge podudarne cene unutar raspona datuma kriterijuma. A funkcija IFERROR rezultira praznim ćelijama ako formula naiđe na greške.

Pročitajte više: VLOOKUP sa Višestruki kriteriji uključujući raspon datuma u Excelu (2 načina)

Zaključak

U ovom članku demonstriramo više načina za INDEX MATCH više kriterijuma datumskog raspona. Koristimo funkcije kao što su INDEX , MATCH . XLOOKUP i AGGREGATE za formiranje formula koje indeksirajuodgovaraju unosima koji zadovoljavaju kriterijume. Nadamo se da će vam ovi gore navedeni načini pomoći da se nosite sa svojom situacijom. Komentirajte ako imate dodatnih pitanja ili imate nešto za dodati.

Hugh West je vrlo iskusan Excel trener i analitičar s više od 10 godina iskustva u industriji. Diplomirao je računovodstvo i finansije i magistrirao poslovnu administraciju. Hugh ima strast prema podučavanju i razvio je jedinstven pristup podučavanju koji je lako pratiti i razumjeti. Njegovo stručno znanje o Excel-u pomoglo je hiljadama studenata i profesionalaca širom svijeta da poboljšaju svoje vještine i napreduju u karijeri. Kroz svoj blog, Hugh dijeli svoje znanje sa svijetom, nudeći besplatne Excel tutorijale i online obuku kako bi pomogli pojedincima i preduzećima da ostvare svoj puni potencijal.