Дэн настраивает рабочий лист для использования в своей компании, и ему нужен способ расчета первого рабочего дня месяца calendar. Он знает, как рассчитать первый день месяца, но, возможно, этот день выпадет на выходные или праздничные дни.

Самый простой способ рассчитать первый день недели данного месяца — использовать функцию РАБДЕНЬ следующим образом:

=WORKDAY(EOMONTH(A1,-1), 1)

Эта формула находит первый день недели месяца любого числа, указанного в ячейке A1. Функция EOMONTH возвращает последний день месяца, предшествующий дате в ячейке A1, а затем функция WORKDAY возвращает первый день недели следующего месяца.

Функция собрана таким образом (с использованием EOMONTH), потому что WORKDAY немного необычный; предполагается, что первый параметр — допустимый рабочий день.

Это означает, что он не проверяет, приходится ли дата, указанная в параметре, на рабочую неделю с понедельника по пятницу. Установив для параметра значение дня до месяца, в котором вы хотите определить первый рабочий день, и установив для второго параметра значение 1, функция вернет первый фактический день недели для желаемого месяца.

Функция РАБДЕНЬ также позволяет вам дополнительно указать, что праздники следует учитывать. Самый простой способ сделать это — создать список праздничных дат в диапазоне ячеек, а затем назвать этот диапазон. (Как вы называете диапазон, обсуждается в других выпусках ExcelTips.) Если вы дадите диапазону имя, например MyHolidays, то вы можете использовать следующую версию формулы:

=WORKDAY(EOMONTH(A1,-1), 1, MyHolidays)

Вот изящный трюк, если вы хотите рассчитать начальный рабочий день для любого месяца в году. Предположим, что ячейка A1 содержит год, например 2020, а ячейка A2 содержит номер месяца от 1 до 12, представляющий месяц, для которого вы хотите начать рабочий день. Затем вы можете использовать эту формулу, чтобы получить желаемую дату:

=WORKDAY(DATE(A1,A2,0), 1, MyHolidays)

Способ использования функции ДАТА в этой формуле возвращает последний день месяца, предшествующий месяцу и году, указанным в ячейках A2 и A1.

Затем второй параметр для WORKDAY (1) переходит к следующему рабочему дню. MyHolidays (как и раньше) учитывает любые праздники, которые могут произойти в этом месяце.

Функция РАБДЕНЬ прекрасно работает для дат в США, но становится немного сложнее, если вам нужны рабочие дни в других странах. В этом случае попробуйте использовать функцию РАБДЕНЬ.INTL (введенная начиная с Excel 2010), чтобы узнать, поможет ли она вам. Он гораздо более гибок в том, как он позволяет обозначать выходные и праздничные дни.

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (10201) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Calculating_the_First_Business_Day_of_the_Month [Расчет первого рабочего дня месяца].