Како користити ИНДЕКС МАТЦХ са више критеријума за период

  • Деле Ово
Hugh West

Варијабле (као што су цена робе, акција, каматна стопа итд.) које су подложне датумима изазивају панику код људи, јер њихове цене зависе од датума. ИНДЕКС МАТЦХ период са више критеријума може да издвоји цене из датог периода.

Рецимо да имамо одређене производе са стабилним ценама током одређеног временског периода. И желимо да ИНДЕКСИРАЈУ СЕ цене за дате критеријуме.

У овом чланку користимо више функција да ИНДЕКСИ СЕ ПОДАРАВА период са више критеријума.

Преузми Екцел радну свеску

Распон вишеструких критеријума.клск

3 лака начина за коришћење ИНДЕКС МАТЦХ за више критеријума у ​​распону датума

Метода 1: Коришћење функција ИНДЕКС МАТЦХ за више критеријума распона датума

Желимо да извучете цену за одређени производ на одређени датум. Претпоставимо да желимо да видимо цену сладоледа на 02-10-22 ( месец-дан-година ). Ако дати датум пада између понуђеног временског периода, цену ћемо издвојити у било коју празну ћелију.

Кораци: Уметните следећу формулу у било коју празну ћелију (тј., И5 ). Као формула у формули низа, притисните ЦТРЛ+СХИФТ+ЕНТЕР да бисте је применили. Формула одмах враћа цену Производ ако падне у датом временском периоду (тј. Опсег Датум ) као што је приказано испод.

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

🔄 Аутопсија формуле:

Екцел ИНДЕКС функција проналази вредност дате локације унутар датог опсега. У нашем случају користимо функцију МАТЦХ индуковану функцијом ИНДЕКС . Функција МАТЦХ прослеђује свој резултат као број реда за уносе који задовољавају дате критеријуме. Синтакса функције ИНДЕКС је

INDEX(array, row_num, [col_num])

У формули, $Е$5$Е$16 се односи на аргумент низ . Унутар функције МАТЦХ $B$5:$B$16=G5 , $D$5:$D$16>=H5 и $C$5:$C$16<=H5 декларишу критеријуме. Да бисмо обезбедили бољу идентификацију, бојимо одговарајуће опсеге у правоугаонике.

Функција МАТЦХ лоцира позицију дате вредности унутар ред, колона или табела. Као што смо раније рекли, део МАТЦХ преноси број реда за функцију ИНДЕКС . Синтакса функције МАТЦХ је

MATCH (lookup_value, lookup_array, [match_type])

Део МАТЦХ је

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

Део МАТЦХ додељује 1 као лоокуп_валуе , ($B$5:$B$16=G5)*($D$5:$D$16>=H5)*($C$5:$C$16<=H5) као лоокуп_арраи , а 0 декларише [матцх_типе] као потпуно подударање.

Коришћена формула МАТЦХ враћа 3 као што пронађе Сладолед у реду број 3 .

У случајевима, имамо више производа да извучемо њихову цену скуп података. Некако изгледа као на следећој слици,

Комбинована формула ИНДЕКС МАТЦХ преузима Цене након његовоаргументе који задовољавају критеријуме. У супротном резултира грешком #Н/А као што је приказано на горњој слици екрана.

Прочитајте више: Подударање ВБА ИНДЕКСА На основу више критеријума у ​​Екцел-у ( 3 методе)

Метод 2: КСЛООКУП функција за рад са више критеријума

Слично као Метода 1 , можемо користити КСЛООКУП функција (доступна само у Екцел 365 ) до ИНДЕКС МАТЦХ више критеријума за период. Синтакса функције КСЛООКУП је

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

Кораци: Користите формулу испод у ћелији И5 затим притисните ЕНТЕР .

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

Формула КСЛООКУП враћа цењену цену која задовољава дате критеријуме (тј. Производ и Датум ) као што је приказано на горњој слици.

🔄 Аутопсија формуле:

КСЛООКУП додељује 1 као свој лоокуп аргумент, (H5>=$C$5:$C$16)*(H5<=$D$5:$D$16)*($B$5:$B$16=G5) као лоокуп_арраи, $Е$5:$Е$16 као ретурн_арраи . Такође, формула приказује текст Није пронађено у случају да уноси не спадају у распон датума. Ми означавамо додељене критеријуме у обојеним правоугаоницима као што је приказано на следећој слици.

За више производа, можете применити формулу КСЛООКУП и издвојити цене по задовољавању датих критеријума. Такође, формула приказује Није пронађено ако се дати критеријуми датума не прошире унутар датог датумаопсег.

Можете додати више критеријума него што се користи у формули. Да би се дали једноставни и луцидни сценарији, коришћени су минимални критеријуми.

Прочитајте више: КСЛООКУП са више критеријума у ​​Екцел-у (4 лака начина)

Метода 3: Функције ИНДЕКСА и АГРЕГАТА за издвајање променљиве цене из периода

Цене неких производа (тј. сирова нафта, валута, итд.) су толико променљиве да флуктуирају недељама или чак данима. Имамо цене одређеног производа у интервалу од недељу дана. Желимо да пронађемо цену за дате датуме. Да бисмо пронашли цену за дати период, можемо користити комбиновану функцију ИНДЕКС АГГРЕГАТ . Синтакса функције АГГРЕГАТЕ је

AGGREGATE (function_num, options, ref1, ref2)

Кораци: Откуцајте следећу формулу у било коју празну ћелију (тј. , Е8 ).

=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. цена одређеног датума производа 02-15-22 до 02-25-22 је 0,84$ . Може бити доступна 2. или 3. цена, али у почетку се држимо оне 1. .

🔄 Аутопсија формуле :

У формули, =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))) део обезбеђује број реда за ИНДЕКС функција. Ц$5:Ц$13 је аргумент арраи функције ИНДЕКС .

Унутар формуле АГГРЕГАТЕ ,

(B$5:B$13>=F$4)*(B$5:B$13<=F$5) враћа 1 или 0 у зависности од тога да ли датуми скупа података спадају уопсег или не.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5)) враћа низ бројева редова у зависности од испуњавања критеријума датума. У супротном, резултира вредностима грешке.

ROW(B$5:B$13)/((B$5:B$13>=F$4)*(B$5:B$13<=F$5))-ROW(B$5)+1 ас реф1 резултира низом бројева редова конвертованих у бројеве индекса, иначе у вредностима грешке.

РОВС(Е$8:Е8) као реф2 резултира бројем реда и то је једноставан начин да добијете број реда док примењујете формулу надоле.

Број 15 = број_функције (тј. МАЛА ), 6 = опције (тј. игнорише вредности грешке ). Можете изабрати фунцтион_нум од 19 различитих функција и Оптионс од 8 различитих опција.

На крају, 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))) прослеђује н-ти најмањи индексни број реда који задовољава дате критеријуме.

У случају да дође до грешке, IFERROR(INDEX...),"") игнорише све типове грешака и трансформише их у празна места.

➤ Превуците ручицу за попуњавање да бисте дохватили друге цене које се подударају у оквиру временског опсега критеријума. А функција ИФЕРРОР резултира празним ћелијама ако формула наиђе на грешке.

Прочитајте више: ВЛООКУП са Више критеријума укључујући распон датума у ​​Екцел-у (2 начина)

Закључак

У овом чланку демонстрирамо више начина за ПОДРЖАВАЊЕ ИНДЕКСА период са више критеријума. Користимо функције као што су ИНДЕКС , МАТЦХ . КСЛООКУП и АГГРЕГАТЕ да формирају формуле које индексирајуодговарају уносима који задовољавају критеријуме. Надамо се да ће вам ови горе наведени начини помоћи да се носите са својом ситуацијом. Коментирајте ако имате додатних питања или имате нешто да додате.

Хју Вест је веома искусан Екцел тренер и аналитичар са више од 10 година искуства у индустрији. Дипломирао је рачуноводство и финансије и магистрирао пословну администрацију. Хју има страст према подучавању и развио је јединствен приступ подучавању који је лако пратити и разумети. Његово стручно знање о Екцел-у помогло је хиљадама студената и професионалаца широм света да унапреде своје вештине и постану успешни у каријери. Кроз свој блог, Хју дели своје знање са светом, нудећи бесплатне Екцел туторијале и онлајн обуку како би помогли појединцима и предузећима да остваре свој пуни потенцијал.