Работа с датами в Microsoft Excel — одна из самых востребованных задач, с которой сталкиваются пользователи всех уровней. Без правильного отображения дат невозможно вести учёт, планировать проекты или анализировать временные ряды. Но даже опытные пользователи иногда путаются: почему Excel преобразует введённую дату в число, как зафиксировать текущую дату так, чтобы она не обновлялась, или как автоматически проставлять сегодняшнее число при печати документа?
В этой статье мы разберём 7 способов работы с датами — от ручного ввода до динамических формул, а также покажем, как настроить печать таблиц с датами так, чтобы они выглядели профессионально. Вы узнаете, какие форматы поддерживает Excel, как избежать типичных ошибок при вводе, и почему иногда даты отображаются как «######».
Особое внимание уделим автоматическим функциям (СЕГОДНЯ(), ТДАТА()), которые экономят время при работе с отчётами, а также раскроем секреты форматирования — например, как вывести дату в виде «15 марта 2026 г.» или «понедельник, 15.03».
Если вы когда-нибудь сталкивались с тем, что Excel «не понимает» вашу дату или печатает её в неудобном формате — эта инструкция поможет разобраться в причинах и исправить ошибки.
1. Как вручную ввести дату в Excel
Самый простой способ добавить дату — ввести её в ячейку вручную. Excel автоматически распознаёт большинство форматов дат, но есть нюансы, о которых стоит знать.
При вводе даты используйте один из стандартных форматов:
- 📅 Через точку или тире:
15.03.2026или15-03-2026 - 📅 С разделителем «/»:
15/03/2026(обратите внимание: в американской локали это будет воспринято как 3 месяц, 15 день!) - 📅 С текстом:
15 марта 2026илимарт 15, 2026 - 📅 Краткий формат:
15.03(Excel автоматически подставит текущий год)
Если после ввода дата отобразилась как число (например, 45347), значит Excel интерпретировал её как количество дней с 1 января 1900 года. Чтобы исправить это, измените формат ячейки:
- Выделите ячейку с «числом».
- Нажмите
Ctrl + 1(или правая кнопка мыши → Формат ячеек). - Выберите категорию Дата и укажите нужный формат (например,
14.03.2001).
⚠️ Внимание: Если вы введёте дату в формате 2026/03/15, Excel может воспринять её как 15 марта 2026 (в русской локали) или как 3 месяц, 2026 год, 15 день (в американской). Чтобы избежать путаницы, используйте формат с точкой или явно указывайте месяц текстом.
2. Автоматическая вставка текущей даты (функции СЕГОДНЯ и ТДАТА)
Если вам нужно, чтобы в ячейке всегда отображалась актуальная дата (например, для отчётов или шаблонов), используйте функции:
- 🔄
=СЕГОДНЯ()— вставляет текущую дату, которая обновляется при каждом пересчёте листа. - ⏰
=ТДАТА()— вставляет текущие дату и время (например,15.03.2026 14:30).
Пример использования:
=СЕГОДНЯ() // Вернёт: 15.03.2026 (обновляется автоматически)
=ТДАТА() // Вернёт: 15.03.2026 14:30:45
=ТЕКСТ(СЕГОДНЯ();"dd mmmm yyyy") // Вернёт: 15 марта 2026
Важно: эти функции динамические — они обновляются при каждом открытии файла или изменении данных на листе. Если вам нужна фиксированная дата (например, дата создания документа), используйте комбинацию клавиш:
- 🖥️
Ctrl + ;— вставляет текущую дату как статический текст. - 🖥️
Ctrl + Shift + ;— вставляет текущее время.
⚠️ Внимание: Если вы используете СЕГОДНЯ() в формулах (например, для расчёта просроченных задач), учтите, что дата будет обновляться при каждом открытии файла. Это может исказить результаты, если вы сохраняете исторические данные.
☑️ Проверка перед использованием автоматических дат
3. Форматирование дат: как изменить отображение
Excel хранит даты как числа, но отображает их в зависимости от выбранного формата. Чтобы изменить вид даты:
- Выделите ячейку или диапазон.
- Нажмите
Ctrl + 1→ выберите категорию Дата. - Выберите один из стандартных форматов или создайте свой.
Примеры пользовательских форматов (вводите в ручном режиме):
| Формат кода | Пример отображения | Описание |
|---|---|---|
дд.мм.гггг |
15.03.2026 | Стандартный числовой формат |
д мммм гггг "г." |
15 марта 2026 г. | Текстовый месяц с сокращением "г." |
дддд, д мммм |
понедельник, 15 марта | День недели + дата |
ммм-гг |
мар-24 | Краткий формат для графиков |
[$-419]д мммм гггг;@ |
15 марта 2026 | Локализованный формат (русский) |
Чтобы применить пользовательский формат:
- Выделите ячейку →
Формат ячеек→ вкладка Число. - Выберите категорию (все форматы).
- В поле Тип введите код формата (например,
д мммм гггг "г.").
Excel хранит даты как числа, где 1 = 1 января 1900 года. Поэтому если вы введёте в ячейку число 45347 и примените формат даты, получите 15.03.2026.
4. Как зафиксировать дату (чтобы она не обновлялась)
Если вам нужна статичная дата (например, дата создания документа или подписания договора), используйте один из этих методов:
- 📝 Горячие клавиши: Нажмите
Ctrl + ;— это вставит текущую дату как текст, который не будет меняться. - 📝 Копирование как значение: Введите
=СЕГОДНЯ(), затем скопируйте ячейку и вставьте как Значения (Правая кнопка → Специальная вставка → Значения). - 📝 VBA-макрос: Создайте макрос, который вставит фиксированную дату по нажатию кнопки.
Пример макроса для вставки статичной даты:
Sub InsertFixedDate()
ActiveCell.Value = Date
ActiveCell.NumberFormat = "дд.мм.гггг"
End Sub
Чтобы использовать этот макрос:
- Нажмите
Alt + F11→ Вставка → Модуль. - Вставьте код выше.
- Закройте редактор VBA, вернитесь на лист.
- Назначьте макрос на кнопку (
Вставка → Кнопка).
⚠️ Внимание: Если вы используете Ctrl + ; в ячейке с формулой, Excel заменит формулу на статическую дату. Чтобы избежать этого, сначала выделите пустую ячейку.
5. Печать дат в Excel: настройки и хитрости
При печати таблиц с датами часто возникают проблемы: даты обрезаются, отображаются в неудобном формате или печатаются как числа. Чтобы этого избежать:
- 🖨️ Проверьте формат ячеек: Убедитесь, что даты отформатированы корректно (не как «Общий» или «Текст»).
- 🖨️ Настройте поля: В меню
Файл → Печать → Настройка полейубедитесь, что столбцы с датами не обрезаются. - 🖨️ Используйте колонтитулы: Чтобы на каждой странице печаталась текущая дата, добавьте её в колонтитул:
Вставка → Колонтитулы → Дата. - 🖨️ Печать в PDF: Если даты отображаются корректно на экране, но искажаются при печати, экспортируйте файл в PDF (
Файл → Экспорт → PDF).
Чтобы добавить текущую дату в колонтитул:
- Перейдите в
Вставка → Колонтитулы. - Кликните на верхний или нижний колонтитул.
- В панели инструментов нажмите Дата (вставится текущая дата, которая обновляется при печати).
Если даты печатаются как числа (например, 45347), причины могут быть такими:
- 🔢 Ячейки отформатированы как Общий или Текст.
- 🔢 Принтер или драйвер не поддерживает шрифты Excel (попробуйте другой шрифт, например, Arial).
- 🔢 Файл повреждён (сохраните его в формате
.xlsxзаново).
Как печатать даты в чёрно-белом режиме без потери читаемости?
Используйте формат с подчёркиванием или жирным шрифтом для выделения дат. Например, примените к ячейкам с датами формат Жирный и выровняйте их по центру. Если печатаете график с датами на оси X, увеличьте размер шрифта до 10–12 пт.
6. Распространённые ошибки при работе с датами и как их исправить
Даже опытные пользователи сталкиваются с проблемами при работе с датами. Вот самые частые ошибки и их решения:
| Ошибка | Причина | Решение |
|---|---|---|
Дата отображается как ###### |
Столбец слишком узкий или отрицательная дата | Расширьте столбец или проверьте корректность даты |
Дата превращается в число (например, 45347) |
Неверный формат ячейки | Примените формат Дата (Ctrl + 1) |
Функция СЕГОДНЯ() возвращает ошибку #ИМЯ? |
Опечатка в названии функции или английская локаль | Проверьте написание (в русской версии — СЕГОДНЯ, в английской — TODAY) |
| Дата сдвигается на 4 года (например, 1904 вместо 1900) | В настройках Excel включён параметр Система дат 1904 | Файл → Параметры → Дополнительно → При переходе на эту книгу → Система дат 1900 |
| Дата вводится как текст (выровнена влево) | Ячейка отформатирована как Текст до ввода | Измените формат на Дата и введите дату заново |
Если Excel упорно не распознаёт вашу дату, попробуйте:
- Ввести дату в другом формате (например,
15-мар-2026вместо15.03.2026). - Использовать функцию
=ДАТАЗНАЧ("15.03.2026"), которая преобразует текст в дату. - Проверить региональные настройки Windows (они влияют на распознавание дат).
7. Продвинутые приёмы: динамические даты в отчётах
Для автоматизации работы с датами в отчётах используйте комбинации функций:
- 📊 Дата + N дней:
=СЕГОДНЯ()+30(вернёт дату через 30 дней). - 📊 Разница между датами:
=ДНИ(А2;СЕГОДНЯ())(сколько дней прошло с даты в ячейке A2). - 📊 Последний день месяца:
=ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;0). - 📊 День недели:
=ТЕКСТ(СЕГОДНЯ();"дддд")(вернёт "понедельник").
Пример формулы для расчёта рабочих дней (без выходных):
=ЧИСТРАБДНИ(A2;СЕГОДНЯ())
Где A2 — ячейка с начальной датой.
Чтобы создать автообновляемый отчёт с датами:
- Добавьте в шапку таблицы ячейку с
=СЕГОДНЯ(). - Используйте условное форматирование, чтобы выделять просроченные даты (например, красным цветом, если дата в ячейке меньше
СЕГОДНЯ()). - Для печати добавьте в колонтитул функцию
&[Дата], чтобы на каждом листе была актуальная дата.
Функция РАБДЕНЬ() учитывает только субботу и воскресенье как выходные. Чтобы исключить праздники, используйте ЧИСТРАБДНИ.МЕЖД() с указанием диапазона праздничных дат.
FAQ: Частые вопросы о датах в Excel
Почему Excel меняет мою дату на американский формат (месяц/день/год)?
Это происходит из-за региональных настроек. Чтобы исправить:
- Откройте
Файл → Параметры → Язык. - Убедитесь, что в разделе Региональные параметры выбрана Русская (Россия).
- Если проблема остаётся, вводите даты в формате
дд.мм.ггггили используйте текстовый месяц (15 марта 2026).
Как вставить дату, которая не будет меняться при открытии файла?
Используйте одно из решений:
- Нажмите
Ctrl + ;(вставит статическую дату). - Введите
=СЕГОДНЯ(), затем скопируйте ячейку и вставьте как Значения. - Используйте VBA-макрос (см. раздел 4).
Можно ли в Excel отобразить дату прописью (например, «пятнадцатое марта»)?
Стандартных функций для этого нет, но можно использовать комбинацию ТЕКСТ() и VBA. Пример формулы для числа:
=ВЫБОР(ДЕНЬ(A1);"первое";"второе";"третье";...) & " " & ВЫБОР(МЕСЯЦ(A1);"января";"февраля";...)
Для полной автоматизации лучше создать пользовательскую функцию на VBA.
Почему при печати даты сдвигаются или обрезаются?
Проверьте:
- Ширину столбцов (расширьте их или включите Перенос текста).
- Формат ячеек (должен быть Дата, а не Общий).
- Настройки принтера (иногда драйверы искажают шрифты — попробуйте другой принтер или PDF).
Как посчитать количество дней между двумя датами?
Используйте функцию =ДНИ(конечная_дата;начальная_дата). Пример:
=ДНИ(B2;A2) // Вернёт разницу в днях между ячейками B2 и A2
Для рабочих дней (без выходных): =ЧИСТРАБДНИ(A2;B2).