Формула на Excel: Вземете следващото планирано събитие -

Съдържание

Обща формула

(=MIN(IF((range>=TODAY()),range)))

Обобщение

За да получите следващото планирано събитие от списък със събития с дати, можете да използвате формула на масив, базирана на функциите MIN и TODAY, за да намерите следващата дата, и INDEX и MATCH, за да покажете събитието на тази дата. В показания пример формулата в G6 е:

(=MIN(IF((date>=TODAY()),date)))

Където "дата" е наименуваният диапазон D5: D14.

Забележка: това е формула на масив и трябва да се въведе с Control + Shift + Enter.

Обяснение

Първата част на решението използва функциите MIN и TODAY за намиране на „следващата дата“ въз основа на датата днес. Това става чрез филтриране на датите чрез функцията IF:

IF((date>=TODAY()),date)

Логическият тест генерира масив от стойности TRUE / FALSE, където TRUE съответства на дати, по-големи или равни на днешните:

(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)

Когато резултатът е TRUE, датата се предава в масив, върнат от IF. Когато резултатът е FALSE, датата се заменя с булева FALSE. Функцията IF връща следния масив на MIN:

(FALSE;FALSE;FALSE;43371;43385;43399;43413;43427;43441;43455)

След това функцията MIN игнорира FALSE стойностите и връща най-малката стойност за дата (43371), която е датата 28 септември 2018 г. в системата за дати на Excel.

Получаване на името на филма

За да покажем филма, свързан със "следващата дата" ", използваме INDEX и MATCH:

=INDEX(movie,MATCH(G6,date,0))

Вътре в INDEX MATCH намира позицията на датата в G6 в списъка с дати. Тази позиция, 4 в примера, се връща към INDEX като номер на ред:

=INDEX(movie,4)

и INDEX връща филма на тази позиция, "The Dark Knight".

Всичко в една формула

За да върнете следващия филм в една формула, можете да използвате тази формула за масив:

(=INDEX(movie,MATCH(MIN(IF((date>=TODAY()),date)),date,0)))

С МИНИФИ

Ако имате по-нова версия на Excel, можете да използвате функцията MINIFS вместо формулата на масива в G6:

=MINIFS(date,date,">="&TODAY())

MINIFS беше представен в Excel 2016 чрез Office 365.

Обработка на грешки

Формулата на тази страница ще работи дори когато събитията не са сортирани по дата. Ако обаче няма предстоящи дати, функцията MIN ще върне нула вместо грешка. Това ще се покаже като дата "0-Jan-00" в G6, а формулата INDEX и MATCH ще изведе грешка # N / A, тъй като няма нулев ред, от който да се получи стойност. За да уловите тази грешка, можете да замените MIN с функцията SMALL, след което да увиете цялата формула в IFERROR така:

=(IFERROR(SMALL(IF((date>=TODAY()),date),1),"None found"))

За разлика от MIN, функцията SMALL ще изведе грешка, когато не е намерена стойност, така че IFERROR може да се използва за управление на грешката.

Интересни статии...