Как получить первый день месяца в Excel (простые формулы)

Иногда вам может потребоваться знать, какой первый день месяца в зависимости от заданной даты.

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

В этом руководстве по Excel я покажу вам очень простую формулу, которую вы можете использовать для получить первый день месяца в Excel на основе заданной даты.

Итак, приступим!

Получите первый день месяца, используя EOMONTH

Функция EOMONTH дает вам последний день месяца для заданной даты (отсюда и называется функция конца месяца).

Но нам не нужен последний день месяца — нам нужен первый день.

Чтобы получить первое число месяца, вам нужно немного изменить формулу EOMONTH.

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

Обратите внимание, что эти даты указаны в формате ММ / ДД / ГГГГ (формат даты, используемый в США). В вашей системе они могут выглядеть по-разному в зависимости от региональных настроек даты.

Ниже приведена формула для этого:
= EOMONTH (A2; -1) +1

В приведенной выше формуле EOMONTH используются два аргумента:

  • Дата начала: дата, с которой Excel использует значение месяца и вычисляет первый день месяца.
  • Месяцы: Количество месяцев до или после даты начала. Если я использую 0, EOMONTH даст мне последний день данного месяца, а если я использую 1, он даст мне последний день следующего месяца.

Поскольку я использовал -1 в качестве второго аргумента в формуле EOMONTH, он дает мне последний день предыдущего месяца (на основе даты в ячейке A2).

А поскольку мне нужен первый день месяца (с заданной даты), я могу просто добавить 1 к результату EOMONTH.

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

Обратите внимание, что функция EOMONTH доступна только в Excel 2007 и более поздних версиях.

Получите первый день месяца по формуле ДАТА / ДЕНЬ

Даты хранятся в Excel в виде чисел, что позволяет нам легко использовать их в вычислениях (например, сложении / вычитании).

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

Например, если у меня есть дата 15 октября 2021-2022 гг., Чтобы получить первый выходной в этом месяце, мне нужно вычесть 14 дней из этой даты.

Теперь давайте посмотрим, как преобразовать эту логику в формулу Excel.

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

Ниже приведена формула, которая сделает это:
= A2-ДЕНЬ (A2) +1

В приведенной выше формуле используется дата в ячейке A2 (которая хранится как серийный номер сзади и в Excel) и вычитается значение дня той же даты (которое задается формулой DAY).

Вышеупомянутая формула дает нам последний день предыдущего месяца, поэтому добавляется 1, потому что мы хотим, чтобы первый день месяца начинался с заданной даты.

Получите первый понедельник месяца

Получить первый день месяца довольно просто, но, скорее всего, сложно получить первый понедельник месяца (или любой другой первый день недели).

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

Целью этого руководства я буду считать понедельник первым днем ​​недели (чтобы вы могли использовать метод, показанный здесь, чтобы узнать первое появление любого дня недели)

Позвольте мне взять пример сентября 2021-2022, где первый день месяца — вторник, а первый понедельник — 8 сентября 2021-2022.

Ниже приведена формула, которая даст мне первый понедельник сентября2021-2022 гг.
= (EOMONTH (DATE (2020,7,1), - 1) +1) + (MOD (8-WEEKDAY (EOMONTH (DATE (2020,7,1), - 1) +1,2), 7))
Обратите внимание, что я жестко запрограммировал дату с помощью функции DATE. В этом случае вы также можете использовать ссылку на ячейку с датой. Поэтому вместо DATE (2020,7,1) вы можете использовать ссылку на ячейку (например, A2) с датой.

Теперь позвольте мне объяснить, как работает эта формула!

Первая часть формулы (которая является формулой EOMONTH) дает нам первый день месяца для данной даты.

Вторая часть формулы использует функцию WEEKDAY для анализа этого первого дня месяца. Если уже понедельник, то вся формула MOD возвращает 0, и у нас останется сам первый день.

Но если первый день месяца не является понедельником, то формула MOD даст нам общее количество дней, которое мы должны добавить к этой дате, чтобы получить первый понедельник месяца.

Например, для сентября 2021–2022 гг. Первый день месяца — вторник. В этом случае функция MOD дает нам 6, что при добавлении к результату EOMONTH дает нам 7 сентября 2021-2022 гг. Как первый понедельник месяца.

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

Например, если вы хотите найти первую субботу любого месяца, вы можете настроить формулу, как показано ниже:
= (EOMONTH (DATE (2020,9,1); - 1) +1) + (MOD (8-WEEKDAY (EOMONTH (DATE (2020,9,1); - 1) +1,16), 7))
Единственное изменение, которое я сделал, — это второй аргумент формулы WEEKDAY.

Вот как вы можете использовать формулы в Excel, чтобы узнать первый день месяца или первый понедельник (или любой другой день недели) месяца.

Надеюсь, вы нашли этот урок полезным!

Оцените статью
Vip Excel: cоветы по работе с Эксель, таблицы и формулы
Adblock
detector