Как получить дату окончания месяца в excel?

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

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

Лучший способ вычислить последнее число месяца — использовать функцию ЭОМЕСЯЦ. Но помимо этого вы можете использовать и другие методы (VBA).

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

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

Получите последний день месяца, используя функцию EOMONTH.

ЭОМЕСЯЦ — моя любимая функция для расчета последнего дня месяца. Эта функция специально разработана для таких типов вычислений.

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

ЭОМЕСЯЦ(начальная_дата, месяц)

В этом синтаксисе датой начала будет текущая дата, а месяцами — число, обозначающее количество месяцев вперед или назад.

Дата окончания того же месяца

Допустим, у вас есть дата «06 февраля 2017 г.» и вы хотите получить последний день «февраля». В этом случае вам следует использовать следующие формулы:

 =EOMONTH("22-Feb-2017",0)
получить конец дня текущего месяца, используя eomonth

В приведенном выше примере при использовании EOMONTH возвращается 28 февраля 2017 г., что является последней датой февраля.

Как это работает : Здесь вы использовали «0» в качестве числового аргумента, потому что использованная вами дата начала — февраль, и у вас не будет последнего дня того же месяца. Когда вы используете «0», он просто вернет последнюю дату того же месяца, для которого у вас есть дата начала.

Чтобы создать динамическую формулу, вы можете использовать функцию СЕГОДНЯ в аргументе start_date .

Дата окончания будущего месяца

Теперь предположим, что из той же даты вы хотите получить последний день «апреля». В этом случае вам следует использовать следующие формулы:

 =EOMONTH("22-Feb-2017",2)
получить дату окончания будущего месяца с помощью eomonth

В приведенном выше примере формула вернула дату 30 апреля 2017 г., которая является последней датой апреля.

Как это работает

Здесь вы использовали числовой аргумент «2», а использованная вами дата начала — февраль. Теперь, если вы посмотрите, апрель ровно через 2 месяца после февраля, поэтому он вернулся 30 апреля 2017 года.

Дата окончания предыдущего месяца

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

 =EOMONTH("22-Feb-2017",-1)
получить дату окончания предыдущего месяца с помощью eomonth

В приведенном выше примере формула вернула дату 31 января 2017 г., которая является последней датой января.

Как это работает: здесь вы использовали «-1» в качестве числового аргумента, а до февраля ровно 1 месяц.

Функция ДАТА для получения последней даты месяца

Функция ДАТА — это еще один способ получить последний день в Excel. Функция даты помогает вам создать действительную дату Excel, указав год, месяц и день. Вот синтаксис:

ДАТА(год,месяц,день)

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

Маленький совет: если вы используете 0 в качестве дня, будет возвращена последняя дата предыдущего месяца. Например, если вы укажете Год: 2017, Месяц: 4 (т. е. май) и День: 0, результат вернет 30 апреля 2017 г.

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

получить дату окончания месяца, используя функцию даты
 =DATE(CurrentYear,CurrentMonth + 1,0)

Или, если у вас есть только дата, на которую можно ссылаться, формула будет такой:

 =DATE(YEAR(date),MONTH(date)+1,0)

Получите последний день с UDF

Отличный пример VBA. Это макрокод для использования UDF VBA для получения последнего дня месяца. Просто скопируйте его в свой редактор VBA.

 Function LastD(Optional sd As Date = 0) As Date If sd = 0 Then sd = VBA.DateLastD = VBA.DateSerial(VBA.Year(sd), VBA.Month(sd) + 1, 0) End Function
получить дату окончания месяца, используя VBA

В электронной таблице введите «=LastD(» и вставьте дату месяца или ссылку на ячейку. А если вам нужен последний день текущего месяца, просто оставьте это поле пустым, используя круглые скобки.

Заключение

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

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

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

Теперь скажи мне одну вещь. Какой ваш любимый метод больше всего? Или у вас другой метод? Пожалуйста, поделитесь со мной в поле для комментариев, мне бы хотелось услышать ваше мнение. И не забудьте поделиться им с друзьями.