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

  • Podijeli Ovo
Hugh West

Varijable (kao što su cijena robe, udio, kamatna stopa itd.) podložne datumima izazivaju paniku kod općih ljudi jer njihove cijene ovise o datumima. INDEX MATCH višestruki kriterijski raspon datuma može izdvojiti cijene iz zadanog datumskog raspona.

Recimo da imamo određene proizvode čije su cijene stabilne određeno vremensko razdoblje. I želimo INDEKSIRATI USPARANJE cijene za zadane kriterije.

U ovom članku koristimo više funkcija za INDEKSIRANJE USPARAVANJE Raspon više kriterija.

Preuzmite radnu knjigu programa Excel

Raspon više kriterija.xlsx

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

Metoda 1: Upotreba funkcija INDEX MATCH za više kriterija datumskog raspona

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

Koraci: Umetnite sljedeću formulu u bilo koju praznu ćeliju (tj. I5 ). Kao formulu u formuli polja, pritisnite CTRL+SHIFT+ENTER da biste je primijenili. Formula odmah vraća cijenu Proizvoda ako padne u zadanom vremenskom razdoblju (tj. Raspon datuma ) kao što je prikazano u nastavku.

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

🔄 Autopsija formule:

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

INDEX(array, row_num, [col_num])

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

Funkcija MATCH locira položaj zadane vrijednosti unutar redak, stupac ili tablica. Kao što smo ranije rekli, dio MATCH prosljeđuje broj retka 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 dodjeljuje 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 točno podudaranje.

Korištena MATCH formula vraća 3 jer pronalazi Sladoled u retku broj 3 .

U slučajevima, imamo više proizvoda iz kojih možemo izdvojiti njihovu cijenu skup podataka. To otprilike izgleda kao sljedeća slika,

Kombinirana formula INDEX MATCH dohvaća Cijene njegovargumente koji zadovoljavaju kriterije. U suprotnom dolazi do pogreške #N/A kao što je prikazano na gornjoj snimci zaslona.

Pročitajte više: VBA INDEKSNO PODudaranje na temelju više kriterija u Excelu ( 3 metode)

Metoda 2: XLOOKUP funkcija za rad s višestrukim kriterijima

Slično Metodi 1 , možemo koristiti XLOOKUP funkcija (dostupna samo u Excel 365 ) za INDEX MATCH više kriterija datumski raspon. Sintaksa funkcije XLOOKUP je

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

Koraci: Koristite donju formulu 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 važeću cijenu koja zadovoljava zadane kriterije (tj. Proizvod i Datum ) kao što je prikazano na gornjoj slici.

🔄 Autopsija formule:

XLOOKUP dodjeljuje 1 kao svoj argument pretraživanja , (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 datumski raspon. Označavamo dodijeljene kriterije u obojenim pravokutnicima kao što je prikazano na sljedećoj slici.

Za više proizvoda, možete primijeniti formulu XLOOKUP i izdvojiti cijene nakon zadovoljavanja zadanih kriterija. Također, formula prikazuje Nije pronađeno ako se zadani kriteriji datuma ne prošire unutar zadanog datumaraspon.

Možete dodati više kriterija nego što se koristi u formuli. Kako bi se pružili jednostavni i jasni scenariji, korišteni su minimalni kriteriji.

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

Metoda 3: Funkcije INDEX i AGGREGATE za izdvajanje promjenjive cijene iz datumskog raspona

Cijene nekih proizvoda (tj. sirove nafte, valute itd.) toliko su promjenjive da fluktuiraju tjednima ili čak danima. Imamo cijene određenog proizvoda u intervalu od tjedan dana. Želimo pronaći cijenu za dane datume. Da bismo pronašli cijenu za određeni datumski raspon, 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))),"")

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

🔄 Formula Autopsy :

U formuli, dio =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))) daje broj retka za INDEX funkcija. C$5:C$13 je argument niza 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 spadaju li datumi skupa podataka uraspon ili ne.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5)) vraća niz brojeva redaka ovisno o zadovoljavanju kriterija datuma. U suprotnom rezultira vrijednostima pogreš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 redaka pretvorenim u indeksne brojeve inače u vrijednostima pogreške.

RETCI(E$8:E8) kao što ref2 rezultira brojem retka i to je jednostavan način da dobijete broj retka primjenom formule prema dolje.

Broj 15 = function_num (tj. SMALL ), 6 = opcije (tj. zanemariti vrijednosti pogreške ). Možete odabrati function_num između 19 različitih funkcija i Opcije između 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 nti najmanji indeksni broj retka koji zadovoljava zadane kriterije.

U slučaju da se pojavi bilo kakva pogreška, IFERROR(INDEX...),"") zanemaruje sve vrste pogrešaka i pretvara ih u praznine.

➤ Povucite Ručku za popunjavanje da dohvatite druge podudarne cijene unutar raspona datuma kriterija. A funkcija IFERROR rezultira praznim ćelijama ako formula naiđe na pogreške.

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

Zaključak

U ovom članku demonstriramo više načina za INDEKSIRANJE više kriterija datumski raspon. Koristimo funkcije kao što su INDEX , MATCH . XLOOKUP i AGGREGATE za formiranje formula koje indeksirajuodgovaraju unosima koji zadovoljavaju kriterije. Nadamo se da će vam ovi gore navedeni načini pomoći da se nosite sa svojom situacijom. Ostavite komentar ako imate dodatnih pitanja ili želite nešto dodati.

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.