
Генеричка формула
(=MIN(IF((range>=TODAY()),range)))
Резиме
Да бисте добили следећи заказани догађај са листе догађаја са датумима, можете користити формулу низа засновану на МИН и ДАНАС функцијама да бисте пронашли следећи датум, а ИНДЕКС и МАТЦХ за приказ догађаја тог датума. У приказаном примеру, формула у Г6 је:
(=MIN(IF((date>=TODAY()),date)))
Где је „датум“ именовани опсег Д5: Д14.
Напомена: ово је формула низа и мора се унети са Цонтрол + Схифт + Ентер.
Објашњење
Први део решења користи функције МИН и ТОДАИ за проналажење „следећег датума“ на основу данашњег датума. То се постиже филтрирањем датума кроз функцију ИФ:
IF((date>=TODAY()),date)
Логички тест генерише низ вредности ТРУЕ / ФАЛСЕ, где ТРУЕ одговара датумима већим или једнаким данашњим:
(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)
Када је резултат ТРУЕ, датум се преноси у низ који враћа ИФ. Када је резултат ФАЛСЕ, датум се замењује логичким ФАЛСЕ. Функција ИФ враћа следећи низ на МИН:
(FALSE;FALSE;FALSE;43371;43385;43399;43413;43427;43441;43455)
Функција МИН тада занемарује ФАЛСЕ вредности и враћа најмању вредност датума (43371), а то је датум 28. септембра 2018. у Екцеловом систему датума.
Добивање имена филма
Да бисмо приказали филм повезан са „следећим датумом“, користимо ИНДЕКС и МАТЦХ:
=INDEX(movie,MATCH(G6,date,0))
Унутар ИНДЕКС-а, МАТЦХ проналази положај датума у Г6 на листи датума. Ова позиција, 4 у примеру, враћа се у ИНДЕКС као редни број:
=INDEX(movie,4)
и ИНДЕКС враћа филм на тој позицији, "Мрачни витез".
Све у једној формули
Да бисте вратили следећи филм у једној формули, можете користити ову формулу низа:
(=INDEX(movie,MATCH(MIN(IF((date>=TODAY()),date)),date,0)))
Са МИНИФС
Ако имате новију верзију програма Екцел, можете користити функцију МИНИФС уместо формуле низа у Г6:
=MINIFS(date,date,">="&TODAY())
МИНИФС је представљен у програму Екцел 2016 путем Оффице 365.
Руковање грешкама
Формула на овој страници ће радити чак и када догађаји нису сортирани по датуму. Међутим, ако нема предстојећих датума, функција МИН вратиће нулу уместо грешке. Ово ће се приказати као датум „0-јануар-00“ у Г6, а формула ИНДЕКС и МАТЦХ ће избацити грешку # Н / А, јер не постоји нулти ред из ког се добија вредност. Да бисте заробили ову грешку, можете заменити МИН функцијом СМАЛЛ, а затим умотати целу формулу у ИФЕРРОР овако:
=(IFERROR(SMALL(IF((date>=TODAY()),date),1),"None found"))
За разлику од МИН, функција СМАЛЛ ће избацити грешку када вредност није пронађена, па се ИФЕРРОР може користити за управљање грешком.