Извлечение названия месяца из даты в Excel

Иван Корнев·21.05.2024·3 мин

Чтобы быстро получить название месяца (например, «май» или «May») из даты в ячейке A1, используйте формулу =ТЕКСТ(A1;"ММММ"). Это самый надежный способ, работающий во всех современных версиях Excel без необходимости создания дополнительных списков или макросов. Функция автоматически учитывает язык интерфейса программы.

Способ 1: Функция ТЕКСТ — универсальное решение

Функция ТЕКСТ преобразует числовое значение даты в текстовую строку заданного формата. Это предпочтительный метод для 90% задач, так как он компактен и не требует вспомогательных массивов.

Синтаксис и коды форматов

Основная формула выглядит так: =ТЕКСТ(ячейка_с_датой; "код_формата")

Коды формата для месяцев:

  • "ММММ" — полное название месяца на языке интерфейса (январь, февраль...).
  • "МММ" — сокращенное название (янв, фев...).
  • "MMMM" — полное название на английском (January, February...), независимо от языка Excel.
  • "MMM" — сокращенное название на английском (Jan, Feb...).

Примеры использования

Предположим, в ячейке A1 находится дата 15.03.2024.

ЗадачаФормулаРезультат (при русском интерфейсе)
Полное название=ТЕКСТ(A1;"ММММ")март
Краткое название=ТЕКСТ(A1;"МММ")мар
На английском=ТЕКСТ(A1;"MMMM")March
Месяц и год=ТЕКСТ(A1;"ММММ ГГГГ")март 2024
День недели и месяц=ТЕКСТ(A1;"ДДДД, ММММ")пятница, март

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

Способ 2: Комбинация МЕСЯЦ и ИНДЕКС

Этот метод полезен, если вам нужны кастомные названия (например, специфические сокращения) или если функция ТЕКСТ по каким-то причинам недоступна. Он основан на получении номера месяца и выборе соответствующего текста из списка.

Базовая формула

Вставьте следующий массив констант в формулу:

=ИНДЕКС({"январь";"февраль";"март";"апрель";"май";"июнь";"июль";"август";"сентябрь";"октябрь";"ноябрь";"декабрь"}; МЕСЯЦ(A1))

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

  1. МЕСЯЦ(A1) возвращает число от 1 до 12.
  2. ИНДЕКС выбирает элемент из массива под этим номером.

Для сокращенных названий замените массив на: {"янв";"фев";"мар";"апр";"май";"июн";"июл";"авг";"сен";"окт";"ноя";"дек"}.

Если ячейка с датой пуста, функция МЕСЯЦ вернет ошибку #ЗНАЧ!. Всегда оборачивайте формулу в ЕСЛИОШИБКА: =ЕСЛИОШИБКА(ИНДЕКС({...};МЕСЯЦ(A1)); "")

Способ 3: Автоматическая группировка в сводных таблицах

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

  1. Выделите таблицу с датами.
  2. Перейдите на вкладку ВставкаСводная таблица.
  3. Перетащите поле с датой в область Строки.
  4. Нажмите правой кнопкой мыши на любую дату в сводной таблице → Группировать.
  5. Выберите Месяцы (можно дополнительно выбрать Годы).

Excel создаст структуру с названиями месяцев без единой формулы, что значительно ускоряет работу с большими объемами данных.

Обработка частых ошибок

Даже простые формулы могут выдавать ошибки при неправильной подготовке данных. Вот основные причины сбоев:

  • Ошибка #ЗНАЧ!: Чаще всего означает, что исходная дата записана как текст, а не как числовой формат даты.
    • Решение: Используйте функцию ДАТАЗНАЧ() для конвертации или проверьте формат ячейки (Главная → Число → Дата).
  • Неверный язык результата: Формула возвращает названия на английском, хотя нужен русский (или наоборот).
    • Решение: Проверьте коды формата. В русской локали используются кириллические обозначения (М), в международной — латинские (M). Убедитесь, что внутри кавычек в формуле использованы правильные символы.
  • Проблемы в Excel для Mac: Иногда разделителем аргументов выступает точка с запятой ;, а иногда запятая ,.
    • Решение: Если формула выдает ошибку синтаксиса, замените точку с запятой на запятую или наоборот, в зависимости от региональных настроек macOS.

FAQ

Можно ли вывести название месяца прописными буквами? Да, оберните функцию ТЕКСТ в функцию ПРОПИСН: =ПРОПИСН(ТЕКСТ(A1;"ММММ")). Результат: «МАРТ».

Работают ли эти формулы в онлайн-версии Excel? Да, функции ТЕКСТ, МЕСЯЦ и ИНДЕКС полностью поддерживаются в Excel Online и мобильных приложениях.

Как сделать так, чтобы месяц обновлялся автоматически сегодня? Вместо ссылки на ячейку используйте функцию ТДАТА(): =ТЕКСТ(ТДАТА();"ММММ"). Формула будет всегда показывать текущий месяц.

Почему функция НАЗВАНИЕМЕСЯЦА не рекомендуется? В русскоязычной версии Excel функция НАЗВАНИЕМЕСЯЦА (MONTHNAME) часто отсутствует или возвращает значения только на английском языке, требуя дополнительных действий для локализации. Функция ТЕКСТ является более гибким и нативным решением.