Ako používať INDEX MATCH s viacerými kritériami pre rozsah dátumov

  • Zdieľajte To
Hugh West

Premenné (ako napríklad cena komodít, akcií, úroková miera atď.), ktoré sú závislé od dátumu, vyvolávajú u ľudí paniku, pretože ich ceny závisia od dátumu. INDEX MATCH viacero kritérií rozsah dátumu môže extrahovať ceny z daného rozsahu dátumu.

Povedzme, že máme určité produkty, ktorých ceny sú stabilné počas určitého obdobia. A chceme INDEX MATCH ceny pre dané kritériá.

V tomto článku používame viacero funkcií na INDEX MATCH viacero kritérií dátumového rozsahu.

Stiahnite si zošit programu Excel

Rozsah dátumov viacerých kritérií.xlsx

3 jednoduché spôsoby použitia INDEX MATCH pre viacero kritérií rozsahu dátumov

Metóda 1: Použitie funkcií INDEX MATCH pre viacero kritérií rozsahu dátumov

Chceme získať cenu určitého výrobku k určitému dátumu. Predpokladajme, že chceme vidieť cenu Zmrzlina na stránke . 02-10-22 ( mesiac-deň-rok ). Ak daný dátum spadá medzi ponúkané časové obdobie, budeme mať cenu vyčíslenú v ľubovoľnej prázdnej bunke.

Kroky: Do ľubovoľnej prázdnej bunky vložte nasledujúci vzorec (t. j, I5 ). Ako vzorec v poli vzorca, Stlačte tlačidlo CTRL+SHIFT+ENTER okamžite vráti vzorec Produkt cena, ak v danom časovom období klesne (t. j, Dátum ), ako je znázornené nižšie.

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

🔄 Pitvanie vzorca:

Excel INDEX nájde hodnotu daného miesta v danom rozsahu. V našom prípade použijeme MATCH funkcia vyvolaná pomocou INDEX funkciu. MATCH funkcia odovzdá svoj výsledok ako číslo riadku pre položky, ktoré spĺňajú dané kritériá. Syntax INDEX je funkcia

INDEX(array, row_num, [col_num])

Vo vzorci, E$5$E$16 sa vzťahuje na pole argument. Vnútri MATCH funkcia $B$5:$B$16=G5 , $D$5:$D$16>=H5 a $C$5:$C$16<=H5 Pre lepšiu identifikáciu sme príslušné rozsahy vyfarbili obdĺžnikmi.

Stránka MATCH funkcia lokalizuje pozíciu danej hodnoty v rámci riadku, stĺpca alebo tabuľky. Ako sme už uviedli, funkcia MATCH časť odovzdáva číslo riadku pre INDEX Syntax funkcie MATCH je funkcia

MATCH (lookup_value, lookup_array, [match_type])

Stránka MATCH časť je

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

Stránka MATCH časť priraďuje 1 ako lookup_value , ($B$5:$B$16=G5)*($D$5:$D$16>=H5)*($C$5:$C$16<=H5) ako lookup_array a 0 vyhlasuje, že [match_type] ako presnú zhodu.

Použité MATCH vzorec vracia 3 keď nájde Zmrzlina v čísle riadku 3 .

V prípadoch, keď máme k dispozícii viacero produktov, je potrebné získať ich cenu zo súboru údajov. Vyzerá to trochu ako na nasledujúcom obrázku,

Stránka INDEX MATCH kombinovaný vzorec získava Ceny v prípade, že jeho argumenty spĺňajú kritériá. V opačnom prípade je výsledkom #N/A ako je znázornené na vyššie uvedenej snímke obrazovky.

Prečítajte si viac: VBA INDEX MATCH na základe viacerých kritérií v programe Excel (3 metódy)

Metóda 2: Funkcia XLOOKUP na riešenie viacerých kritérií

Podobne ako Metóda 1 , môžeme použiť XLOOKUP (k dispozícii len v Excel 365 ) na INDEX MATCH rozsah dátumov viacerých kritérií. Syntax XLOOKUP je funkcia

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

Kroky: Použite nasledujúci vzorec v bunke I5 potom stlačte tlačidlo Hit VSTÚPIŤ .

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

Stránka XLOOKUP vzorec vráti rešpektovanú cenu, ktorá spĺňa dané kritériá (t. j, Produkt a Dátum ), ako je znázornené na obrázku vyššie.

🔄 Pitvanie vzorca:

Stránka XLOOKUP priraďuje 1 ako jeho vyhľadávanie argument, (H5>=$C$5:$C$16)*(H5<=$D$5:$D$16)*($B$5:$B$16=G5) ako lookup_array, $E$5:$E$16 ako return_array Vzorec tiež zobrazuje Nenájdené text v prípade, že záznamy nespadajú do rozsahu dátumov. Priradené kritériá označujeme farebnými obdĺžnikmi, ako je znázornené na nasledujúcom obrázku.

Pre viacnásobné Produkty, môžete použiť XLOOKUP vzorec a extrahovať ceny po splnení zadaných kritérií. Vzorec tiež zobrazuje Nenájdené ak sa zadané dátumové kritériá nerozšíria v rámci zadaného rozsahu dátumov.

Môžete pridať viac kritérií, ako je použitých vo vzorci. S cieľom poskytnúť jednoduché a prehľadné scenáre boli použité minimálne kritériá.

Prečítajte si viac: XLOOKUP s viacerými kritériami v programe Excel (4 jednoduché spôsoby)

Metóda 3: Funkcie INDEX a AGGREGATE na extrakciu nestálej ceny z rozsahu dátumov

Ceny niektorých produktov (napr. ropy, meny atď.) sú natoľko volatilné, že kolíšu celé týždne alebo dokonca dni. Máme k dispozícii ceny určitého produktu v týždňovom intervale. Chceme zistiť cenu pre dané dátumy. Ak chceme zistiť cenu pre daný interval dátumov, môžeme použiť kombináciu INDEX GREGÁT Syntax funkcie GREGÁT je funkcia

AGGREGATE (function_num, options, ref1, ref2)

Kroky: Do ľubovoľnej prázdnej bunky zadajte nasledujúci vzorec (t. j., 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))),"")

Stránka 1. cena určitého výrobku dátum 02-15-22 na 02-25-22 je . $0.84 . Môže existovať 2. alebo 3. cena k dispozícii, ale na začiatku sme sa držať 1. jeden.

🔄 Pitvanie vzorca:

Vo vzorci, =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))) časť poskytuje číslo riadku INDEX funkcie. C$5:C$13 je pole argument INDEX funkcie.

Vnútri GREGÁT vzorec,

(B$5:B$13>=F$4)*(B$5:B$13<=F$5) vráti 1 alebo 0 v závislosti od toho, či dátumy súboru údajov spadajú do rozsahu alebo nie.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5)) vráti pole čísel riadkov v závislosti od splnenia kritérií dátumu. V opačnom prípade sa zobrazia chybové hodnoty.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1 ako ref1 výsledkom je pole čísel riadkov prevedené na čísla indexov, inak na chybové hodnoty.

ROWS(E$8:E8) ako ref2 Výsledkom je číslo riadku a je to jednoduchý spôsob, ako získať číslo riadku, keď použijete vzorec smerom nadol.

Počet 15 = function_num (t. j, MALÉ ), 6 = možnosti (t. j, ignorovať chybové hodnoty ). Môžete si vybrať function_num z adresy 19 rôzne funkcie a Možnosti z adresy 8 rôzne možnosti.

Konečne, 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))) prechádza n-tý najmenšie indexové číslo riadku, ktorý spĺňa dané kritériá.

V prípade, že sa vyskytne nejaká chyba, IFERROR(INDEX...),"") ignoruje všetky typy chýb a premieňa ich na prázdne miesta.

➤ Potiahnite Rukoväť náplne na získanie ďalších porovnávaných cien v rámci rozsahu dátumov kritérií. A IFERROR funkcia vedie k prázdnym bunkám, ak vzorec narazí na chyby.

Prečítajte si viac: VLOOKUP s viacerými kritériami vrátane rozsahu dátumov v programe Excel (2 spôsoby)

Záver

V tomto článku ukážeme viacero spôsobov, ako INDEX MATCH viacero kritérií rozsahu dátumov. Používame funkcie ako INDEX , MATCH . XLOOKUP a GREGÁT na vytvorenie vzorcov, ktoré indexujú záznamy, ktoré spĺňajú kritériá. Dúfam, že tieto vyššie uvedené spôsoby vám pomôžu vyriešiť vašu situáciu. Ak máte ďalšie otázky alebo chcete niečo dodať, vyjadrite sa.

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.