Как в Excel ввести сегодняшнюю дату: фиксированная и автоматическая

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

В этой статье разберём 5 способов ввода сегодняшней даты — от базовых горячих клавиш до продвинутых формул с учётом часового пояса и локализации. Также выясним, почему иногда Excel показывает дату в неправильном формате (например, как число 45678) и как это исправить. Материал актуален для Excel 2010–2023 и Excel Online.

1. Горячие клавиши: самый быстрый способ

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

Нажмите:

  • 🔹 Ctrl + ; (точка с запятой) — вставит фиксированную дату (например, 15.05.2026).
  • 🔹 Ctrl + Shift + ; — вставит фиксированное время (например, 14:30:45).
  • 🔹 Ctrl + ;ПробелCtrl + Shift + ; — вставит дату и время вместе.

⚠️ Внимание: Дата, введённая таким способом, не обновляется автоматически. Если вы откроете файл через неделю, она останется прежней. Это удобно для протоколов, актов или отчётов, где важна дата создания документа.

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

📊 Как часто вы работаете с датами в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

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

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

Как вставить:

  1. Выделите ячейку, куда нужно вставить дату.
  2. Введите =СЕГОДНЯ() и нажмите Enter.
  3. При необходимости измените формат ячейки (об этом — в разделе про оформление).

🔹 Преимущества: дата всегда актуальна, подходит для отчётов с текущими данными (например, "на дату формирования").

⚠️ Внимание: Если файл не открывать, дата не обновляется! Например, если вы сохраните файл 15 мая, а откроете его 20 мая, функция покажет 20 мая, а не промежуточные даты.

3. Комбинация даты и времени: функция ТДАТА()

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

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

  • 📌 Логирование действий: "Отчёт сформирован =ТДАТА()".
  • 📌 Контроль сроков: "До дедлайна осталось =ЦЕЛОЕ(ТДАТА()-B2) дней" (где B2 — дата дедлайна).
  • 📌 Журналы событий: фиксация точного времени внесения изменений.

⚠️ Внимание: Функция ТДАТА() обновляется при любом изменении в файле (даже если вы просто добавите символ в другую ячейку). Это может замедлить работу с большими таблицами.

Как отключить автоматическое обновление времени?

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

Sub UpdateTime()

Range("A1").Value = Now

End Sub

Создайте кнопку на листе и назначьте на неё этот макрос.

4. Форматирование даты: как изменить отображение

Excel может показывать дату в неудобном формате — например, как число 45467 (это количество дней с 1 января 1900 года) или в американском стиле мм/дд/гггг. Исправить это просто:

Способ 1: Через ленту инструментов

  1. Выделите ячейку с датой.
  2. Перейдите на вкладку Главная → группа Число.
  3. Выберите формат из выпадающего списка (например, 14.03.2012).

Способ 2: Пользовательский формат

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

  1. Выделите ячейку → правая кнопка мыши → Формат ячеек (или Ctrl + 1).
  2. Выберите категорию Все форматы.
  3. В поле Тип введите шаблон, например:
    • 📅 дд ммм гггг15 мая 2026
    • 📅 ддд, д мmmмвт, 15 мая
    • 📅 мм/гг05/24
Код формата Пример Описание
дд.мм.гггг 15.05.2026 Стандартный российский формат
д мmmм гггг 15 мая 2026 Месяц прописью
ддд, д мmmм вт, 15 мая День недели + дата
мм/гг 05/24 Краткий формат
[$-419]д мmmм гггг г. 15 мая 2026 г. Формат с буквой "г." (локаль для России)

🔹 Полезный лайфхак: Если дата отображается как ######, расширьте столбец — ячейка слишком узкая для выбранного формата.

5. Автоматическое заполнение дат в диапазоне

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

Шаги:

  1. Введите начальную дату в первую ячейку (например, =СЕГОДНЯ() или вручную).
  2. Наведите курсор на правый нижний угол ячейки (появится чёрный крестик).
  3. Зажмите левую кнопку мыши и протяните вниз или вправо.
  4. 🔹 Нюансы:

    • 📅 Если тянуть за правый нижний угол — даты будут увеличиваться на 1 день.
    • 📅 Если тянуть с зажатой клавишей Ctrl — даты будут копироваться без изменения.
    • 📅 Для заполнения по неделям введите две начальные даты (например, 15.05.2026 и 22.05.2026), выделите их обе и протяните.

    Убедитесь, что ячейка в формате "Дата"|Проверьте направление протяжки (вниз/вправо)|Зажмите Ctrl, если нужно скопировать значение, а не увеличивать|Для недель введите две начальные даты-->

    6. Продвинутые приёмы: формулы с датами

    Excel позволяет вычислять разницу между датами, добавлять дни/месяцы/годы и даже учитывать рабочие дни. Вот несколько полезных примеров:

    1. Разница между датами в днях:

    =ДАТАЗНАЧ("15.05.2026")-СЕГОДНЯ()  // Сколько дней осталось до 15 мая

    2. Добавление дней к текущей дате:

    =СЕГОДНЯ()+30  // Дата через 30 дней

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

    =ДАТАМЕС(СЕГОДНЯ();1;0)  // Возвращает последний день текущего месяца

    4. Количество рабочих дней между датами (без выходных):

    =ЧИСТРАБДНИ(A1;B1)  // A1 — начальная дата, B1 — конечная

    5. Преобразование текста в дату:

    =ДАТАЗНАЧ("15 мая 2026")  // Распознаёт дату в текстовом формате

    ⚠️ Внимание: Функция ДАТАЗНАЧ зависит от региональных настроек Excel. Если у вас английская версия, используйте формат mm/dd/yyyy (например, 5/15/2026 вместо 15.05.2026).

    7. Ошибки при работе с датами и как их исправить

    Даты в Excel — частый источник ошибок. Рассмотрим типичные проблемы и решения:

    Проблема Причина Решение
    Дата отображается как число (например, 45467) Ячейка в формате "Общий" или "Числовой" Измените формат на "Дата" (Ctrl + 1 → категория "Дата")
    Функция СЕГОДНЯ() возвращает ошибку #ИМЯ? Опечатка в названии функции или английская версия Excel Проверьте написание: рус. СЕГОДНЯ(), англ. TODAY()
    Дата сбивается на 4 года (например, 1904 вместо 1900) Включён режим "Система дат 1904" (Файл → Параметры → Дополнительно) Отключите опцию "Использовать систему дат 1904"
    Функция ДАТАЗНАЧ не распознаёт текст Несовпадение формата текста и региональных настроек Используйте формат, соответствующий языку Excel (например, мм/дд/гггг для англ. версии)

    🔹 Совет: Если даты "сбиваются" при импорте из других программ (например, 1C или баз данных), предварительно преобразуйте их в текстовый формат с разделителями (например, дд-мм-гггг), а затем используйте ДАТАЗНАЧ.

    FAQ: Частые вопросы о датах в Excel

    Можно ли сделать так, чтобы дата обновлялась не при открытии файла, а по расписанию?

    Нет, в стандартном Excel нет такой функции. Однако можно использовать:

    • 📌 VBA-макрос с таймером (требует навыков программирования).
    • 📌 Power Query для подгрузки текущей даты из внешнего источника.
    • 📌 Office Scripts (в Excel Online) для автоматического обновления по расписанию.

    Простейший пример макроса для обновления даты каждую минуту:

    Sub AutoUpdateDate()
    

    Range("A1").Value = Now

    Application.OnTime Now + TimeValue("00:01:00"), "AutoUpdateDate"

    End Sub

    Запустите его один раз, и дата в ячейке A1 будет обновляться автоматически.

    Почему функция СЕГОДНЯ() показывает вчерашнюю дату?

    Это происходит, если:

    • 📌 Файл не сохранялся и не открывался сегодня (функция обновляется только при открытии/сохранении/пересчёте).
    • 📌 В настройках Excel отключен автоматический пересчёт формул (Файл → Параметры → Формулы → Пересчёт книги).
    • 📌 На компьютере неправильно установлена системная дата.

Решение: нажмите F9 для принудительного пересчёта или проверьте системные настройки даты.

Как вставить дату без года (например, "15 мая")?

Используйте пользовательский формат:

  1. Выделите ячейку с датой → Ctrl + 1.
  2. Выберите категорию Все форматы.
  3. В поле Тип введите д мmmм (без года).

Если дата вводится вручную, используйте формулу:

=ТЕКСТ(СЕГОДНЯ();"д мmmм")
Можно ли в Excel получить дату в формате ISO (YYYY-MM-DD)?

Да, двумя способами:

  1. Через форматирование:
    • Выделите ячейку → Ctrl + 1.
    • Выберите формат 2012-03-14 (в категории "Дата").
  • Через формулу:
    =ТЕКСТ(СЕГОДНЯ();"yyyy-mm-dd")

    Результат будет текстом, а не датой.

  • Как сделать так, чтобы дата обновлялась только один раз в день (например, в 9:00)?

    Стандартными средствами Excel это невозможно. Решения:

    • 📌 VBA-макрос с проверкой времени:
      Sub UpdateOncePerDay()
      

      If Hour(Now) >= 9 And Hour(Now) < 10 Then

      Range("A1").Value = Date

      End If

      End Sub

      Назначьте его на событие открытия книги (ThisWorkbook_Open).

    • 📌 Power Automate (для Excel Online): создайте поток, который будет обновлять файл в 9:00.