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

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

Дело в том, что Excel воспринимает даты и месяцы как числовые значения, а не как текст. Например, январь 2026 для программы — это число 45292 (количество дней с 1 января 1900 года). Если ввести месяц как обычный текст, все функции дат перестанут работать. В этой статье разберём 5 способов корректного ввода месяцев — от простых до продвинутых, — а также типичные ошибки и их решения.

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

1. Ручной ввод месяцев: текст vs. дата

Самый очевидный способ — ввести месяц вручную. Но здесь кроется подвох: Excel может интерпретировать введённое значение по-разному.

Если вы напишете «январь»** в ячейке, программа воспримет это как текст. Такой подход подходит для оформления заголовков, но не позволит:

  • 📅 Сортировать данные по хронологии (Excel отсортирует по алфавиту: апрель, август, декабрь...)
  • 📊 Строить графики по временным периодам
  • 🔢 Использовать месяц в формулах (например, =МЕСЯЦ(A1) вернёт ошибку)

Чтобы Excel распознал месяц как часть даты, вводите его в одном из стандартных форматов:

  • 📅 01.01.2026 (день.месяц.год)
  • 📅 янв-24 или январь 2026 (Excel автоматически преобразует в дату)
  • 📅 1/1/2026 (американский формат месяц/день/год — будьте осторожны!)
⚠️ Внимание: Если после ввода даты в ячейке отображается число (например, 45292), не пугайтесь! Это внутренний формат Excel. Чтобы увидеть привычную дату, измените формат ячейки на Дата (вкладка Главная → Формат → Формат ячеек).

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

  1. Введите первую дату (например, 01.01.2026).
  2. Наведите курсор на правый нижний угол ячейки (появится чёрный крестик).
  3. Протяните вниз или вправо, удерживая левую кнопку мыши.
📊 Как вы обычно вводите месяцы в Excel?
Вручную, как текст
Как дату (01.01.2026)
Использую формулы
Копирую из других источников

2. Функция ДАТА(): создание дат с нуля

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

Синтаксис:

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

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

  • 📅 =ДАТА(2026; 1; 1)01.01.2026
  • 📅 =ДАТА(ГОД(СЕГОДНЯ()); 5; 1) → первое мая текущего года
  • 📅 =ДАТА(2026; МЕСЯЦ(СЕГОДНЯ())+1; 1) → первый день следующего месяца

Преимущество этого метода — гибкость. Например, вы можете создать таблицу, где в столбце A перечислены месяцы с 1 по 12, а в столбце B автоматически генерируются даты первого числа каждого месяца:

=ДАТА(2026; A1; 1)
⚠️ Внимание: Если в формуле указать месяц 13 или больше, Excel автоматически перенесёт значение на следующий год. Например, =ДАТА(2026; 13; 1) вернёт 01.01.2026. Это поведение можно использовать для расчётов с пересечением годовых границ.

Указан ли год в 4-значном формате (2026, а не 24)|

Месяц — число от 1 до 12 (или формула, возвращающая такое число)|

День не превышает количество дней в месяце (например, не 31 февраля)|

Формат ячейки установлен как "Дата"-->

3. Функция МЕСЯЦ(): извлечение месяца из даты

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

Синтаксис:

=МЕСЯЦ(дата_в_формате_Excel)

Примеры:

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

Результат функции — число от 1 (январь) до 12 (декабрь). Чтобы преобразовать его в название месяца, используйте =ТЕКСТ():

=ТЕКСТ(ДАТА(2026; МЕСЯЦ(A1); 1); "MMMM")

Эта формула вернёт полное название месяца (например, "март") на основе даты в ячейке A1.

Формула Результат Пояснение
=МЕСЯЦ("10.05.2026") 5 Май — пятый месяц года
=ТЕКСТ(ДАТА(2026;5;1);"МММ") май Сокращённое название месяца
=ТЕКСТ(ДАТА(2026;5;1);"ММММ") май (на русском) Полное название на языке системы
=МЕСЯЦ(СЕГОДНЯ()) Зависит от текущей даты Динамическое значение
=ТЕКСТ(ДАТА(2026;5;1);"[$-409]MMMM")

где 409 — код языка для английского (США).-->

4. Текстовые функции: ТЕКСТ(), ВЫБРАТЬ() и другие

Иногда месяцы нужно отображать в нестандартном формате — например, как "Q1: Январь" (квартал + месяц) или "01-Янв". Для этого используйте комбинацию функций =ТЕКСТ() и =ВЫБРАТЬ().

Пример 1: Преобразовать номер месяца в его название:

=ВЫБРАТЬ(A1; "Январь"; "Февраль"; "Март"; ...; "Декабрь")

где A1 содержит число от 1 до 12.

Пример 2: Создать формат "Q1: Январь" для квартального отчёта:

=ТЕКСТ(ДАТА(2026;A1;1);"\"Q\"Q: MMMM")

Пример 3: Сокращённое название месяца на английском:

=ТЕКСТ(ДАТА(2026;A1;1);"[$-409]MMM")

Для массового преобразования текстового списка месяцев (например, "январь", "февраль") в номера используйте функцию =ПОИСКПОЗ():

=ПОИСКПОЗ(A1;{"январь";"февраль";"март";...;"декабрь"};0)
⚠️ Внимание: Функция ВЫБРАТЬ() чувствительна к регистру! Если в ячейке написано "Январь" с большой буквы, а в формуле указано "январь" — результат будет ошибкой #Н/Д.
Как создать выпадающий список месяцев?

1. Перейдите на вкладку Данные → Проверка данных.

2. В поле Тип данных выберите Список.

3. В поле Источник введите:

январь,февраль,март,апрель,май,июнь,июль,август,сентябрь,октябрь,ноябрь,декабрь

или укажите диапазон ячеек с названиями месяцев.

4. Нажмите ОК.

Теперь при выборе ячейки появится выпадающий список.

5. Динамические месяцы: СЕГОДНЯ(), МЕСЯЦ(), ЕМЕСЯЦ()

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

  • 📅 =СЕГОДНЯ() — возвращает текущую дату.
  • 📅 =МЕСЯЦ(СЕГОДНЯ()) — номер текущего месяца.
  • 📅 =ЕМЕСЯЦ() — добавляет или вычитает месяцы из даты.

Пример 1: Получить название текущего месяца:

=ТЕКСТ(СЕГОДНЯ();"MMMM")

Пример 2: Сгенерировать дату через 3 месяца от сегодняшней:

=ЕМЕСЯЦ(СЕГОДНЯ(); 3)

Пример 3: Создать таблицу с месяцами текущего квартала:

=ДАТА(ГОД(СЕГОДНЯ()); МЕСЯЦ(СЕГОДНЯ())-ОСТАТ(МЕСЯЦ(СЕГОДНЯ())-1;3)+1; 1)

Эта формула вернёт первое число первого месяца текущего квартала.

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

  1. Выделите диапазон с датами.
  2. Перейдите в Главная → Условное форматирование → Создать правило.
  3. Выберите Использовать формулу... и введите:
    =МЕСЯЦ(A1)=МЕСЯЦ(СЕГОДНЯ())
  4. Задайте формат (например, зелёный фон) и нажмите ОК.

6. Типичные ошибки и как их избежать

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

Ошибка 1: Месяцы сортируются по алфавиту, а не по порядку.

  • 🔹 Причина: Месяца введены как текст ("январь", "февраль"...
  • 🔹 Решение: Преобразуйте текст в даты с помощью функции =ДАТАЗНАЧ() или введите месяцы как числа (1–12).

Ошибка 2: Формула =МЕСЯЦ(A1) возвращает #ЗНАЧ!.

  • 🔹 Причина: В ячейке A1 не дата, а текст (например, "январь").
  • 🔹 Решение: Преобразуйте текст в дату с помощью =ДАТАЗНАЧ("1-"&A1&"-2026") (если в A1 название месяца).

Ошибка 3: При автозаполнении даты увеличивается не месяц, а день.

  • 🔹 Причина: Excel по умолчанию увеличивает день, а не месяц.
  • 🔹 Решение: Введите две даты (например, 01.01.2026 и 01.02.2026), выделите обе и протяните маркер автозаполнения.

Ошибка 4: Функция =ЕМЕСЯЦ() возвращает неверную дату.

  • 🔹 Причина: Исходная дата введена как текст или в некорректном формате.
  • 🔹 Решение: Убедитесь, что ячейка содержит настоящую дату (проверьте формат ячейки).
Ошибка Пример Решение
Месяцы как текст "январь" вместо 01.01.2026 Использовать =ДАТАЗНАЧ() или вводить как дату
Неправильная сортировка Апрель, август, декабрь... Преобразовать в числовой формат (1–12)
#ЗНАЧ! в МЕСЯЦ() =МЕСЯЦ("январь") Заменить текст на дату или использовать =ПОИСКПОЗ()
ЕМЕСЯЦ() даёт 31 февраля =ЕМЕСЯЦ("31.01.2026";1) Excel автоматически корректирует дату на 29.02.2026

7. Продвинутые приёмы: массивы и Power Query

Для сложных задач (например, генерации месяцев за несколько лет или обработки больших массивов данных) используйте формулы массивов или инструмент Power Query.

Пример 1: Сгенерировать список всех месяцев за 5 лет (2020–2026) в одном столбце:

=ТРАНСП(ДАТА(ПОВТОР(ПОСЛЕДОВ(2020;5);12); ПОВТОР(ПОСЛЕДОВ(1;12);5); 1))

Эта формула создаст массив дат первого числа каждого месяца за 5 лет.

Пример 2: В Power Query (вкладка Данные → Получить данные):

  1. Создайте новый запрос Из других источников → Пустой запрос.
  2. В редакторе введите в строку формул:
    = {1..12}

    и преобразуйте в таблицу.

  3. Добавьте пользовательский столбец с формулой:
    = Date.From(DateTime(2026, [Column1], 1))
  4. Загрузите данные в Excel.

Пример 3: Динамический календарь на год с указанием кварталов:

=ТЕКСТ(ДАТА(2026;ПОСЛЕДОВ(1;12);1);"MMMM") & " (Q" & ОКРВВЕРХ(ПОСЛЕДОВ(1;12)/3;0) & ")"

Результат: "Январь (Q1)", "Февраль (Q1)", ..., "Декабрь (Q4)".

⚠️ Внимание: Формулы массивов (вроде ПОСЛЕДОВ()) доступны только в Excel 365 и Excel 2021. В более старых версиях используйте комбинацию СТРОКА() и ДАТА().

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

Как в Excel написать месяц прописью (например, "январь")?

Используйте функцию =ТЕКСТ() с форматированием:

=ТЕКСТ(ДАТА(2026;1;1);"MMMM")

Для сокращённого варианта ("янв") замените "MMMM" на "MMM".

Почему Excel не распознаёт месяц как дату?

Скорее всего, вы ввели месяц как текст (например, "январь"). Чтобы исправить:

  1. Введите дату в формате 01.01.2026.
  2. Или используйте =ДАТАЗНАЧ("1-январь-2026").

Проверьте формат ячейки: он должен быть Дата, а не Текст.

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

Введите первую дату (например, 01.01.2026), затем протяните маркер автозаполнения, удерживая правую кнопку мыши. В появившемся меню выберите Заполнить по дням или Заполнить по неделям.

Можно ли в Excel написать месяц на английском?

Да, используйте код языка в функции ТЕКСТ():

=ТЕКСТ(ДАТА(2026;5;1);"[$-409]MMMM")

где 409 — код для английского (США). Для других языков используйте соответствующие коды (например, 407 для немецкого).

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

Используйте функцию =РАЗНДАТ():

=РАЗНДАТ("01.01.2023"; "01.05.2026"; "m")

где "m" — код для месяцев. Результат: 16 (месяцев между январём 2023 и маем 2026).