Как определить месяц из даты в Excel: от простых функций до сложных формул

Работа с датами в Microsoft Excel — одна из самых востребованных задач среди пользователей. Часто требуется не просто хранить даты в ячейках, а извлекать из них конкретную информацию: год, день недели или, что особенно актуально, месяц. Например, при анализе продаж по месяцам, составлении отчётов или планировании бюджета. Но как правильно вытащить месяц из даты, чтобы дальнейшие расчёты были точными?

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

1. Функция МЕСЯЦ(): простейший способ получить номер месяца

Начнём с базового инструмента — функции МЕСЯЦ() (англ. MONTH()). Она возвращает номер месяца (от 1 до 12) для указанной даты. Синтаксис прост:

=МЕСЯЦ(дата)

Где дата — это ссылка на ячейку с датой (например, A1) или сама дата в формате ДД.ММ.ГГГГ, заключённая в кавычки. Примеры:

  • 📅 =МЕСЯЦ("15.03.2026") → вернёт 3 (март)
  • 📅 =МЕСЯЦ(A1) → извлечёт месяц из ячейки A1, если там содержится дата
  • 📅 =МЕСЯЦ(СЕГОДНЯ()) → вернёт номер текущего месяца

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

2. Текстовый формат: как получить название месяца (январь, февраль и т.д.)

Функция МЕСЯЦ() возвращает только номер, но что делать, если нужен текст — например, "апрель" вместо "4"? Здесь поможет функция ТЕКСТ() (англ. TEXT()). Она преобразует дату в текстовый формат с учётом заданного шаблона:

=ТЕКСТ(дата; "ММММ")

Где "ММММ" — это код формата, который выводит полное название месяца. Другие варианты:

  • 📌 "МММ" → сокращённое название (янв, фев, март)
  • 📌 "М" или "ММ" → номер месяца (1, 02, 12 и т.д.)
  • 📌 "Д ММММ ГГГГ" → формат "5 апреля 2026"

Пример: =ТЕКСТ("15.05.2026"; "ММММ") вернёт "май". Обратите внимание, что результат будет на том языке, который установлен в настройках Excel. Для русскоязычной версии это будут названия на русском.

⚠️ Внимание: Функция ТЕКСТ() возвращает текст, а не число. Это значит, что дальнейшие математические операции (например, сложение или сортировка) с таким результатом будут невозможны без дополнительных преобразований.

3. Функция ДАТАМЕС(): работа с месяцами в динамике

Если вам нужно не просто извлечь месяц, а сдвинуть дату на определённое количество месяцев (например, для прогнозирования или анализа трендов), используйте функцию ДАТАМЕС() (англ. EDATE()). Она добавляет или вычитает месяцы из указанной даты:

=ДАТАМЕС(начальная_дата; количество_месяцев)

Примеры:

  • 🔄 =ДАТАМЕС("15.03.2026"; 1)15.04.2026 (сдвиг на 1 месяц вперёд)
  • 🔄 =ДАТАМЕС(A1; -3) → сдвиг даты из ячейки A1 на 3 месяца назад

Эта функция полезна для создания динамических отчётов, где нужно автоматически обновлять даты. Например, если вы ведёте график платежей по кредиту, ДАТАМЕС() поможет рассчитать даты будущих выплат.

📊 Какой способ извлечения месяца вы используете чаще?
Функция МЕСЯЦ()
Функция ТЕКСТ()
Форматирование ячеек
Другие формулы

4. Пользовательское форматирование: быстрый способ отображения месяца

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

  1. Выделите ячейку или диапазон с датами.
  2. Нажмите правой кнопкой мыши → Формат ячеек (или Ctrl+1).
  3. Вкладка Число → категория Все форматы.
  4. В поле Тип введите один из кодов:
    • 📆 ММММ — полное название месяца (например, "июнь")
    • 📆 МММ — сокращённое название (например, "июн")
    • 📆 М или ММ — номер месяца (1–12)

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

Что будет, если применить формат "ММММ" к тексту?

Если в ячейке содержится не дата, а текст (например, "15 марта"), Excel проигнорирует форматирование и отобразит текст без изменений. Чтобы преобразовать текст в дату, используйте функцию ДАТАЗНАЧ().

5. Комбинация функций: сложные задачи с месяцами

Для решения нестандартных задач часто требуется комбинировать несколько функций. Рассмотрим популярные сценарии:

5.1. Определение квартала по месяцу

Если нужно сгруппировать данные по кварталам, используйте формулу:

=ОКРУГЛВВЕРХ(МЕСЯЦ(A1)/3; 0)

Она вернёт номер квартала (1–4) для даты в ячейке A1.

5.2. Последний день месяца

Чтобы найти последний день месяца (например, для расчёта дедлайнов), используйте:

=ДАТА(ГОД(A1); МЕСЯЦ(A1)+1; 0)

Формула добавляет 1 месяц к дате и отнимает 1 день, возвращая последний день текущего месяца.

5.3. Название месяца на английском

Если требуется название месяца на английском (например, для международных отчётов), используйте:

=ТЕКСТ(A1; "[$-409]ММММ")

Где [$-409] — код локали для английского языка.

Задача Формула Пример результата
Номер месяца =МЕСЯЦ(A1) 5 (для мая)
Название месяца (рус.) =ТЕКСТ(A1; "ММММ") "май"
Последний день месяца =ДАТА(ГОД(A1); МЕСЯЦ(A1)+1; 0) 31.05.2026
Квартал по месяцу =ОКРУГЛВВЕРХ(МЕСЯЦ(A1)/3; 0) 2 (для мая)

6. Ошибки при работе с месяцами в Excel и как их избежать

Даже опытные пользователи сталкиваются с ошибками при извлечении месяцев из дат. Рассмотрим самые распространённые проблемы и их решения:

⚠️ Внимание: Если функция МЕСЯЦ() возвращает #ЗНАЧ!, проверьте, что ячейка содержит именно дату, а не текст. Используйте ДАТАЗНАЧ() для преобразования текста в дату: =МЕСЯЦ(ДАТАЗНАЧ("15 марта 2026")).
  • Ошибка #ИМЯ?: Возникает, если название функции написано с ошибкой (например, МЕСЯЦЫ вместо МЕСЯЦ). Проверьте синтаксис.
  • Неправильный формат даты: Excel может воспринимать дату как текст, если она введена в нестандартном формате (например, "март-2026"). Используйте ДАТА() или ДАТАЗНАЧ() для корректного преобразования.
  • Проблемы с локализацией: Названия месяцев на русском не отображаются, если в настройках Excel установлен английский язык. Измените языковые параметры в Файл → Параметры → Язык.
  • Округление дат: Функции вроде ОКРУГЛ() не работают с датами напрямую. Преобразуйте дату в число с помощью ДАТАЗНАЧ().

Ещё одна типичная ошибка — использование текста вместо даты. Например, если в ячейке написано "июнь 2026", Excel не сможет извлечь номер месяца без предварительного преобразования. В таких случаях поможет комбинация функций:

=МЕСЯЦ(ДАТАЗНАЧ("1 " & A1))

Где A1 содержит текст "июнь 2026". Формула добавляет "1 " перед текстом, преобразуя его в корректную дату.

Убедитесь, что ячейка содержит дату, а не текст|Проверьте регистр в названиях функций (МЕСЯЦ, а не месяц)|Используйте локаль [$-409] для английских названий месяцев|Применяйте ДАТАЗНАЧ() для преобразования текста в дату-->

7. Автоматизация: как быстро применить формулы ко всему столбцу

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

7.1. Маркер заполнения

Введите формулу в первую ячейку (например, =МЕСЯЦ(A1) в B1), затем:

  1. Наведите курсор на правый нижний угол ячейки (появится крестик).
  2. Дважды кликните или протяните вниз до конца диапазона.

7.2. Горячие клавиши

Выделите ячейку с формулой, нажмите Ctrl+C, затем выделите диапазон для вставки и нажмите Ctrl+V. Excel автоматически скорректирует ссылки (например, A1 станет A2, A3 и т.д.).

7.3. Таблицы Excel (Ctrl+T)

Преобразуйте диапазон в умную таблицу (Вставка → Таблица или Ctrl+T). Формулы, добавленные в столбец таблицы, автоматически применяются ко всем новым строкам.

Важно: При копировании формул с абсолютными ссылками (например, $A$1) они не будут корректироваться. Используйте относительные ссылки (A1) или смешанные ($A1), если нужно зафиксировать только столбец.

FAQ: Частые вопросы по работе с месяцами в Excel

Как извлечь месяц из даты, если она записана как текст (например, "15 марта 2026")?

Используйте функцию ДАТАЗНАЧ() для преобразования текста в дату, а затем примените МЕСЯЦ():

=МЕСЯЦ(ДАТАЗНАЧ("15 марта 2026"))

Если текст хранится в ячейке A1, формула будет:

=МЕСЯЦ(ДАТАЗНАЧ(A1))
Почему функция ТЕКСТ() возвращает месяц на английском, хотя в Excel установлен русский язык?

Это происходит, если в формуле явно указан код локали для английского языка (например, [$-409]). Уберите его или замените на [$-419] для русского:

=ТЕКСТ(A1; "ММММ")

Если проблема сохраняется, проверьте языковые настройки в Файл → Параметры → Язык.

Можно ли извлечь месяц из даты без использования функций?

Да, с помощью пользовательского форматирования (см. раздел 4). Однако это только визуальное отображение — для расчётов всё равно потребуются функции. Например, если вам нужно отсортировать данные по месяцам, форматирование не поможет: используйте столбец с формулой =МЕСЯЦ().

Как посчитать количество дней в месяце для любой даты?

Используйте формулу:

=ДЕНЬ(ДАТА(ГОД(A1); МЕСЯЦ(A1)+1; 0))

Она вернёт количество дней в месяце для даты в ячейке A1. Например, для февраля 2026 года (високосный) результат будет 29.

Как сравнить месяцы двух дат (например, проверить, относятся ли они к одному месяцу)?

Используйте логическую формулу:

=И(ГОД(A1)=ГОД(B1); МЕСЯЦ(A1)=МЕСЯЦ(B1))

Она вернёт ИСТИНА, если даты в ячейках A1 и B1 приходятся на один месяц и год, и ЛОЖЬ в противном случае.