Формула Excel: Список праздников между двумя датами -

Содержание

Общая формула

(=TEXTJOIN(", ",TRUE,IF(dates>=start,IF(dates<=end,holidays,""),"")))

Резюме

Чтобы перечислить праздники, которые происходят между двумя датами, вы можете использовать формулу, основанную на функциях TEXTJOIN и IF.

В показанном примере формула в F8:

(=TEXTJOIN(", ",TRUE,IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")))

Это формула массива, которую необходимо вводить с помощью Ctrl + Shift + Enter.

Объяснение

На высоком уровне эта формула использует вложенную функцию ЕСЛИ для возврата массива праздников между двумя датами. Затем этот массив обрабатывается функцией TEXTJOIN, которая преобразует массив в текст, используя запятую в качестве разделителя.

Работая изнутри, мы генерируем массив совпадающих праздников, используя вложенный IF:

IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")

Если даты в B4: B12 больше или равны дате начала в F5, и если даты в B4: B12 меньше или равны дате окончания в F6, то IF возвращает массив праздников. В показанном примере список выглядит так:

(""; ""; "День президентов"; "День памяти"; ""; ""; ""; ""; "")

Затем этот массив доставляется в функцию TEXTJOIN как аргумент text1 , где разделитель установлен в "," и ignore_empty имеет значение TRUE. Функция TEXT JOIN обрабатывает элементы в массиве и возвращает строку, в которой каждый непустой элемент разделен запятой и пробелом.

Примечание. Функция ОБЪЕДИНЕНИЕ - это новая функция, доступная в Office 365 и Excel 2019.

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