Работа с датами в Microsoft Excel — одна из самых востребованных задач. Нужно ли вам вести журнал продаж, планировать задачи или просто фиксировать дату создания документа — умение быстро вставлять текущую дату сэкономит часы работы. Но как это сделать правильно? Оказывается, в Excel есть сразу 5 способов вставить сегодняшнюю дату — и все они работают по-разному.
Некоторые методы создают статическую дату (которая не изменится завтра), другие — динамическую (автоматически обновляется при пересчёте). А есть и полуавтоматические варианты с горячими клавишами. В этой статье разберём каждый способ с примерами, нюансами и типичными ошибками. Вы узнаете, как вбить дату одним кликом, как сделать её "живой", и почему иногда Excel показывает вчерашний день вместо сегодняшнего.
Давайте начнём с самого простого — и постепенно перейдём к продвинутым техникам, которые используют даже опытные аналитики.
1. Горячие клавиши: самый быстрый способ (Ctrl+;)
Если вам нужно вставить текущую дату одним нажатием, запомните комбинацию Ctrl+; (точка с запятой). Это универсальный хоткей, который работает во всех версиях Excel — от Excel 2003 до Microsoft 365.
Как это работает:
- Выделите ячейку, куда хотите вставить дату
- Нажмите
Ctrl+; - Готово! В ячейке появится сегодняшняя дата в формате по умолчанию (например,
15.05.2026)
✅ Плюсы метода:
- 🔥 Мгновенный результат — быстрее, чем ввод вручную
- 📅 Дата вставляется в формате, соответствующем региональным настройкам Windows
- 🖥️ Работает даже в защищённых листах (если разрешён ввод данных)
❌ Минусы:
- ⏳ Дата статическая — не обновляется автоматически
- 🔄 Если вам нужно изменить формат (например, на
15 мая 2026 г.), придётся делать это вручную черезФормат ячеек
2. Формула TODAY(): динамическая дата, которая обновляется
Если вам нужна дата, которая будет автоматически меняться каждый день, используйте функцию =TODAY() (или =СЕГОДНЯ() в русской версии). Эта формула возвращает текущую дату и обновляется при каждом пересчёте листа или открытии файла.
Как вставить:
=TODAY()
или для русскоязычной версии:
=СЕГОДНЯ()
🔹 Пример использования:
Допустим, вы ведёте таблицу с задачами и хотите отслеживать, сколько дней осталось до дедлайна. В ячейке B2 у вас дата завершения проекта (30.05.2026), а в A2 вводите:
=B2-TODAY()
Excel автоматически посчитает количество дней до дедлайна.
⚠️ Внимание:
Функция
TODAY()зависит от системных настроек даты и времени вашего компьютера. Если они сбиты, Excel покажет неверную дату. Проверьте настройки вПанели управления → Дата и времяперед использованием.
📊 Сравнение статической и динамической даты:
| Параметр | Ctrl+; (статическая) |
=TODAY() (динамическая) |
|---|---|---|
| Обновляется автоматически? | ❌ Нет | ✅ Да |
| Зависит от системной даты? | ❌ Нет (фиксируется при вводе) | ✅ Да |
| Можно изменить формат? | ✅ Да (через Формат ячеек) |
✅ Да |
| Работает в защищённом листе? | ✅ Да | ❌ Нет (если запрещены формулы) |
3. Сочетание NOW() и INT(): альтернатива TODAY()
Функция =NOW() (=ТДАТА() в русской версии) возвращает текущие дату и время. Но что, если вам нужна только дата без времени? Здесь поможет комбинация с функцией INT(), которая отсекает дробную часть (время):
=INT(NOW())
или
=ЦЕЛОЕ(ТДАТА())
🔹 Когда это полезно:
- 📊 Когда вам нужно фиксировать дату и время создания отчёта, но выводить только дату
- 🔄 Если выlater планируете добавить время, но пока нужна только дата
- 📅 Для совместимости со старыми версиями Excel, где
TODAY()может работать нестабильно
⚠️ Внимание:
ФункцияNOW()пересчитывается при каждом изменении листа, что может замедлять работу больших файлов. Если вам не нужно обновление в реальном времени, используйтеTODAY()или статическую дату.
Почему NOW() иногда показывает вчерашнюю дату?
Это происходит, если в настройках Excel отключён автоматический пересчёт формул. Чтобы исправить, перейдите в Формулы → Параметры вычислений → Автоматически
4. VBA-макрос: вставка даты с дополнительными действиями
Если вы работаете с макросами, можно создать собственную функцию для вставки даты с уникальными параметрами. Например, макрос, который вставляет дату и одновременно меняет формат ячейки:
Sub InsertFormattedDate()
ActiveCell.Value = Date
ActiveCell.NumberFormat = "dd mmmm yyyy г."
ActiveCell.Font.Bold = True
End Sub
🔹 Как использовать:
- Нажмите
Alt+F11, чтобы открыть редактор VBA - Вставьте код выше в модуль (через
Insert → Module) - Назначьте макросу сочетание клавиш или кнопку на панели быстрого доступа
✅ Преимущества:
- 🎨 Полный контроль над форматом даты (например,
15 мая 2026 года) - 🔄 Можно добавить дополнительные действия (изменение цвета, добавление примечания)
- 📁 Работает во всех версиях Excel, включая Excel for Mac
❌ Недостатки:
- 🚫 Требует разрешённых макросов (может не работать в защищённых файлах)
- 🔧 Нужны базовые знания VBA для модификации кода
Настроить уровень безопасности макросов|Создать резервную копию файла|Проверить код на ошибки|Назначить удобное сочетание клавиш-->
5. Power Query: автоматическое добавление даты при импорте данных
Если вы импортируете данные в Excel через Power Query (например, из базы данных или CSV), можно автоматически добавлять столбец с текущей датой. Это полезно для создания отчётов с меткой времени.
🔹 Пошаговая инструкция:
- Импортируйте данные через
Данные → Получить данные - В редакторе Power Query выберите
Добавить столбец → Настраиваемый столбец - Введите формулу:
= DateTime.LocalNow().Date - Назовите новый столбец (например, "Дата импорта") и нажмите
ОК
📌 Где это пригодится:
- 📈 Для отслеживания, когда данные были обновлены последний раз
- 🔍 При анализе временных трендов (например, продажи по дням)
- 📊 В дашбордах, где важно показывать актуальность информации
⚠️ Внимание:
Дата в Power Query фиксируется на момент импорта и не обновляется автоматически. Чтобы обновить её, нужно повторно запустить запрос через
Данные → Обновить все.
6. Типичные ошибки и как их избежать
Даже с такими простыми операциями пользователи сталкиваются с проблемами. Вот самые распространённые ошибки и их решения:
🔴 Проблема 1: Excel показывает дату в формате 45467 вместо 15.05.2026
🔹 Решение:
Это происходит, потому что Excel хранит даты как числа (количество дней с 1 января 1900 года). Чтобы исправить:
- Выделите ячейку с "кривой" датой
- Нажмите
Ctrl+1(или правая кнопка →Формат ячеек) - Выберите категорию
Датаи нужный формат
🔴 Проблема 2: Формула =TODAY() не обновляется
🔹 Решение:
Проверьте настройки пересчёта:
- Перейдите в
Формулы → Параметры вычислений - Убедитесь, что выбрано
Автоматически - Если стоят
Вручную, нажмитеF9для принудительного пересчёта
🔴 Проблема 3: При копировании формулы дата не меняется
🔹 Решение:
Функция TODAY() всегда возвращает текущую дату, независимо от того, куда её скопировали. Если вам нужны разные даты (например, сегодня, вчера, завтра), используйте:
=TODAY()-1 'вчера'
=TODAY()+1 'завтра'
🔴 Проблема 4: Дата отображается на английском (например, May 15, 2026)
🔹 Решение:
Измените региональные настройки Excel:
- Перейдите в
Файл → Параметры → Язык - Убедитесь, что основной язык редактирования — русский
- Если проблема остаётся, вручную задайте формат через
Формат ячеек → Локализованные форматы
FAQ: Частые вопросы о датах в Excel
Можно ли вставить сегодняшнюю дату так, чтобы она не менялась при открытии файла?
Да, для этого используйте статический метод — комбинацию Ctrl+;. Эта дата зафиксируется навсегда. Если же вы использовали =TODAY(), но потом решили "заморозить" значение, скопируйте ячейку с формулой и вставьте как Значения (правая кнопка → Специальная вставка → Значения).
Почему в моём Excel нет функции TODAY()?
Вероятно, у вас Excel на другом языке. В русской версии функция называется =СЕГОДНЯ(). Также проверьте, не отключены ли формулы в настройках безопасности (особенно если файл пришёл из интернета). Чтобы включить их, перейдите в Файл → Параметры → Центр управления безопасностью → Параметры центра → Включить все макросы (не рекомендуется для недоверенных файлов!).
Как вставить дату без года (например, только "15 мая")?
Используйте пользовательский формат:
- Выделите ячейку с датой
- Нажмите
Ctrl+1 - В разделе
Число → Все форматывведите:dd mmmm
Для английской версии Excel используйте dd mmmm, для русской — д мммм. Обратите внимание, что это только отображение — в формулах дата останется полной.
Можно ли сделать так, чтобы дата обновлялась только раз в день, а не при каждом изменении листа?
Да, для этого нужно отключить автоматический пересчёт формул и обновлять дату вручную:
- Перейдите в
Формулы → Параметры вычислений → Вручную - Используйте
=TODAY()как обычно - Обновляйте дату по необходимости, нажимая
F9
Альтернативный вариант — использовать VBA-макрос, который обновляет дату только при открытии файла.
Как вставить текущую дату в заголовок или колонтитул Excel?
Для этого:
- Перейдите в
Вставка → Колонтитулы - Кликните по тому месту, где должна быть дата
- В панели
КонструкторнажмитеТекущая дата(или вручную введите&[Date])
Такая дата будет обновляться при каждом открытии или печати документа.