Автоматизация работы с датами: функции СЕГОДНЯ и МЕСЯЦ

Иван Корнев·11.04.2026·4 мин

Функции СЕГОДНЯ() и МЕСЯЦ() в Excel позволяют автоматически подставлять текущую дату и извлекать номер месяца из любого значения, что критически важно для создания «живых» отчетов, дашбордов и калькуляторов сроков. =СЕГОДНЯ() возвращает актуальную дату системы при каждом открытии файла, а =МЕСЯЦ(дата) преобразует дату в число от 1 до 12. Используя их вместе, можно строить динамические таблицы, которые не требуют ручного обновления дат.

Главное отличие: Функция СЕГОДНЯ() обновляется автоматически при любом изменении в книге или её открытии. Если вам нужно зафиксировать дату ввода (статичная дата), используйте комбинацию клавиш Ctrl + ;.

Функция СЕГОДНЯ(): динамическая дата в ячейке

Эта функция не требует аргументов. Она считывает системные часы компьютера и выводит дату в формате, принятом в настройках Excel.

Базовый синтаксис

=СЕГОДНЯ()

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

Практические сценарии использования

1. Расчет остатка дней до дедлайна Если в ячейке B2 указана конечная дата проекта, формула в соседней ячейке покажет, сколько дней осталось:

=B2 - СЕГОДНЯ()

Чтобы текст был понятнее, оберните расчет в условие:

=ЕСЛИ(B2 - СЕГОДНЯ() < 0; "Просрочено"; B2 - СЕГОДНЯ() & " дн.")

2. Автоматическое проставление даты заполнения В журналах учета часто требуется видеть дату внесения записи. Формула =СЕГОДНЯ() в столбце «Дата» гарантирует, что при печати отчета сегодня там будет стоять сегодняшнее число, а не дата создания шаблона.

Проблема отображения: Если после ввода формулы вы видите число вроде 45393, а не 11.04.2026, измените формат ячейки. Нажмите Ctrl+1, выберите категорию Дата и нужный формат отображения.

Функция МЕСЯЦ(): извлечение номера месяца

Функция МЕСЯЦ принимает дату (число, ссылку на ячейку или результат другой формулы) и возвращает целое число от 1 (январь) до 12 (декабрь).

Синтаксис

=МЕСЯЦ(число_даты)

Где число_даты — это ссылка на ячейку с датой (например, A1) или сама дата в кавычках ("15.05.2026").

Примеры применения

Группировка продаж по месяцам Имея столбец с датами транзакций, создайте вспомогательный столбец «Месяц»:

=МЕСЯЦ(A2)

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

Проверка квартала Комбинируя с функцией ОКРУГЛВВЕРХ, можно определить квартал:

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

Для даты в марте (месяц 3) формула вернет 1 (первый квартал), для апреля (4) — 2.

Комбинирование функций для продвинутой аналитики

Совместное использование СЕГОДНЯ и МЕСЯЦ открывает возможности для создания полностью автоматизированных шаблонов.

Топ-4 полезные связки

ЗадачаФормулаОписание
Первое число текущего месяца=ДАТА(ГОД(СЕГОДНЯ()); МЕСЯЦ(СЕГОДНЯ()); 1)Возвращает дату начала текущего периода (например, 01.04.2026).
Последнее число месяца=ДАТА(ГОД(СЕГОДНЯ()); МЕСЯЦ(СЕГОДНЯ())+1; 0)Хитрый прием: день «0» следующего месяца дает последний день текущего.
Название месяца текстом=ТЕКСТ(СЕГОДНЯ(); "ММММ")Выводит полное название («апрель») для заголовков отчетов.
Количество дней в месяце=ДЕНЬ(ДАТА(ГОД(СЕГОДНЯ()); МЕСЯЦ(СЕГОДНЯ())+1; 0))Возвращает число 30 или 31 (или 28/29) для текущего месяца.

Создание «умного» заголовка отчета

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

="Отчет о продажах за " & ТЕКСТ(СЕГОДНЯ();"ММММ ГГГГ")

Результат: Отчет о продажах за апрель 2026. При открытии файла в мае текст изменится автоматически.

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

Частые ошибки и способы их устранения

При работе с датами пользователи часто сталкиваются с типовыми проблемами, которые легко исправить.

  • Ошибка #ЗНАЧ! Возникает, если в ячейке, на которую ссылается МЕСЯЦ, хранится текст, а не дата (например, "янв. 2026" или дата с лишними пробелами). Решение: Проверьте исходные данные. Используйте функцию ДАТАЗНАЧ для конвертации текста или убедитесь, что разделители дат соответствуют настройкам системы.

  • Неверный расчет разницы дат Если формула =B2 - СЕГОДНЯ() возвращает отрицательное число, хотя дата в будущем, проверьте форматы. Иногда дата введена как текст. Решение: Выделите ячейку с датой, нажмите Данные -> Текст по столбцам -> Далее -> Далее -> Выберите формат Дата -> Готово.

  • Статичность вместо динамики Пользователи иногда вводят дату вручную вместо формулы СЕГОДНЯ(), забывая обновлять её завтра. Решение: Всегда используйте формулу для текущей даты в шаблонах. Для фиксации даты используйте горячие клавиши.

FAQ

Можно ли заставить СЕГОДНЯ() обновляться каждые 5 минут? По умолчанию пересчет происходит при изменении ячеек или открытии файла. Для автообновления по таймеру требуется использование макросов (VBA), так как стандартные функции не имеют встроенного таймера.

Почему функция МЕСЯЦ возвращает число, а не название? Функция МЕСЯЦ предназначена для математических операций и логических проверок, поэтому возвращает число (1–12). Для получения названия («Январь», «Февраль») используйте функцию ТЕКСТ(дата; "ММММ").

Работают ли эти функции в старых версиях Excel? Да, функции СЕГОДНЯ и МЕСЯЦ являются базовыми и работают во всех версиях Excel, начиная с 2007 года, включая веб-версию и мобильные приложения.