Работа с датами в Microsoft Excel — одна из самых частых задач при анализе данных, составлении отчётов или ведении календарного планирования. Однако стандартные форматы отображения (например, ДД.ММ.ГГГГ или МММ-ГГ) не всегда соответствуют требованиям пользователя. Возникает необходимость преобразовать дату в удобный вид: будь то текстовый формат для отчёта, числовой для расчётов или кастомный шаблон с названием месяца на русском.
Проблема усложняется, когда Excel воспринимает введённые данные не как дату, а как текст — или наоборот. Например, после импорта из CSV даты могут отобразиться как числа (например, 45678 вместо 01.01.2026). В этой статье разберём все способы преобразования дат, включая скрытые функции и типичные ошибки, которые портят данные.
Особое внимание уделим пользовательским форматам — они позволяют выводить даты в виде "1 января 2026 г.", "Пятница, 10 янв" или даже "I квартал 2026". Также рассмотрим, как автоматизировать процесс с помощью формул ТЕКСТ, ДАТАЗНАЧ и ПОЛУЧИТЬ.ДАННЫЕ.СВЯЗИ для динамических таблиц.
1. Базовое изменение формата через панель инструментов
Самый простой способ изменить отображение даты — использовать встроенные форматы в ленте Excel. Этот метод подходит, если вам нужно быстро привести столбец к стандартному виду без ручного ввода шаблонов.
Выделите ячейки с датами, затем перейдите на вкладку Главная → группа Число. В выпадающем списке форматов выберите Краткая дата или Длинный формат даты. Например:
- 📅
14.03.2026— краткий формат (по умолчанию для России). - 📅
14 марта 2026 г.— длинный формат с названием месяца. - 📅
14-марилимар-25— сокращённые варианты.
Если нужного варианта нет в списке, кликните Дополнительные форматы... (внизу выпадающего меню) — откроется окно Формат ячеек, где можно выбрать из расширенного списка или создать свой шаблон (об этом ниже).
⚠️ Внимание: Если после изменения формата ячейка отображает ######, значит, столбец слишком узкий. Растяните его или уменьшите размер шрифта. Это не ошибка данных, а визуальный артефакт.
Для массового изменения формата в большой таблице используйте горячие клавиши:
Ctrl + 1
— это вызовет окно Формат ячеек для выделенного диапазона.
2. Пользовательский формат даты: создаём уникальный шаблон
Встроенные форматы не всегда покрывают нужды пользователя. Например, вам может потребоваться отобразить дату как "1-й квартал 2026" или "Понедельник, 10.01". Для этого служат пользовательские форматы.
Откройте окно Формат ячеек (Ctrl + 1), перейдите на вкладку Число → Все форматы. В поле Тип: введите свой шаблон, используя следующие символы:
- 📅
д— день без ведущего нуля (1),дд— с ведущим нулём (01). - 📅
м— месяц без нуля (1),мм— с нулём (01),ммм— сокращённое название (янв),мммм— полное (январь). - 📅
г— год в двухзначном формате (25),гг— в четырёхзначном (2026). - 📅
ддд— сокращённое название дня недели (пн),дддд— полное (понедельник).
Примеры шаблонов:
| Шаблон | Пример отображения | Описание |
|---|---|---|
д ммм гггг г. | 1 янв 2026 г. | Дата с названием месяца и словом "год" |
дд.мм.гг "г." | 01.01.25 г. | Краткий формат с буквой "г." |
[$-419]дддд, д мммм | понедельник, 1 января | День недели + полная дата (локаль для русского языка) |
"Квартал "Н(г)/4 | Квартал 1 | Номер квартала (требует формулы) |
Критичный нюанс: пользовательские форматы не изменяют фактическое значение ячейки, а только её отображение. Для расчётов (например, разницы между датами) всегда используется исходное числовое значение.
3. Преобразование даты в текст: когда и как это делать
Иногда дату нужно преобразовать в текстовый формат — например, для экспорта в другие системы или создания статических отчётов. Однако текстовые даты теряют функциональность: их нельзя сортировать, использовать в формулах или строить по ним графики.
Способы преобразования:
- Функция
ТЕКСТ:=ТЕКСТ(A1; "дд.мм.гггг")Заменяет формат ячейки
A1на текстовый с заданным шаблоном. Пример результата:"01.01.2026"(в кавычках, как текст). - Функция
ДАТАЗНАЧ(обратное действие):=ДАТАЗНАЧ("01.01.2026")Преобразует текст в дату (числовой формат). Полезно после импорта данных.
- Специальная вставка: Скопируйте ячейки с датами, затем вставьте как
ЗначениячерезСпециальная вставка(Ctrl + Alt + V).
⚠️ Внимание: Если вы используете ТЕКСТ для дат в сводных таблицах, фильтрация и группировка по периодам (месяцам, кварталам) работать не будет. Для анализа данных всегда держите исходные даты в числовом формате.
Для массового преобразования текста в дату (например, после импорта из 1С или SQL) используйте комбинацию функций:
=ДАТАЗНАЧ(ПОДСТАВИТЬ(A1; "."; "/"))
— это заменит точки на косые черты (стандартный разделитель дат в Excel).
4. Автоматическое преобразование при импорте данных
Частая проблема: даты из внешних источников (например, CSV, JSON или баз данных) импортируются как текст или числа. Например, 2026-01-01 (стандарт ISO) или 45678 (числовой формат Excel).
Решения:
- 📥 Мастер импорта текста: При открытии CSV выберите столбец с датой → укажите формат
ДМГ(день-месяц-год) илиГМД(год-месяц-день). - 📥 Power Query: В
Данные → Получить данные → Из файлаиспользуйте шагПреобразовать → Формат даты. - 📥 Формула для ISO-формата:
=ДАТАЗНАЧ(ЛЕВСИМВ(A1;10))Преобразует
2026-01-01 12:00:00в дату, отсекая время.
Если даты импортированы как числа (например, 45678), это внутренний формат Excel, где 1 = 01.01.1900. Чтобы преобразовать:
=ДАТА(1900+ЦЕЛОЕ(A1/365); ОСТАТ(A1;365)/30; ОСТАТ(A1;30))
— приблизительный расчёт (точнее использовать ДАТАЗНАЧ с текстовой конвертацией).
Использован мастер импорта с указанием формата|Проверены первые 5 строк на соответствие датам|Удалены лишние символы (время, миллисекунды)|Применён формат ячеек "Дата"-->
5. Продвинутые приёмы: кварталы, недели, локализация
Для аналитики часто требуются нестандартные форматы: номера кварталов, недель или даты на иностранных языках. Вот как это реализовать:
Номер квартала:
— вернёт Номер недели:
— где Локализация (английские месяцы):
Используйте код локали в пользовательском формате: — где
Если после применения пользовательских форматов даты отображаются некорректно, выполните: 1. Выделите проблемные ячейки. 2. Нажмите 3. Повторно примените нужный формат даты. Это сбросит настройки отображения к исходным. Даже опытные пользователи сталкиваются с проблемами при работе с датами. Рассмотрим самые распространённые ошибки и способы их исправления.
Ошибка 1: Дата отображается как число (например, 45678).
Ошибка 2: Дата сбивается при открытии файла на другом ПК.
Ошибка 3: Функция Ошибка 4: Даты в сводной таблице группируются некорректно.
Используйте комбинацию функций — где =ОКРУГЛВВЕРХ(МЕСЯЦ(A1)/3; 0)1 для января–марта, 2 для апреля–июня и т. д. Чтобы вывести "I квартал 2026", комбинируйте с функцией ТЕКСТ:="Квартал " & ОКРУГЛВВЕРХ(МЕСЯЦ(A1)/3; 0) & ", " & ГОД(A1)=НОМНЕДЕЛИ(A1; 21)21 означает, что неделя начинается с понедельника (стандарт ISO[$-409]д ммм гггг409 — идентификатор английского языка. Для немецкого используйте 407, для французского — 40C.
Задача Формула/Формат Пример результата Номер квартала =ОКРУГЛВВЕРХ(МЕСЯЦ(A1)/3;0)2 (для мая) Название месяца на английском [$-409]ммммJanuary Номер недели в году =НОМНЕДЕЛИ(A1;21)5 (для 1 февраля 2026) Дата в формате UNIX timestamp =(A1-ДАТА(1970;1;1))*864001735689600 Как вернуть стандартный формат после экспериментов?
Ctrl + 1 → вкладка Число → выберите Общий.6. Типичные ошибки и их решения
Дата к ячейке (Ctrl + 1).
ММ/ДД/ГГГГ, а в России — ДД.ММ.ГГГГ).ТЕКСТ с явным указанием формата или сохраняйте файл в PDF для передачи.ДАТАЗНАЧ возвращает #ЗНАЧ!.
"01.01.2026г." с лишним символом).ПОДСТАВИТЬ или СЖПРОБЕЛЫ.
ДАТАЗНАЧ перед созданием сводной.⚠️ Внимание: Если вы работаете с датами до
01.01.1900 (например, исторические данные), Excel их не поддерживает. Используйте текстовый формат или специализированные надстройки.FAQ: Ответы на частые вопросы
Как преобразовать дату в формате "январь 2026" обратно в стандартный вид?
ДАТАЗНАЧ и ПОИСК:
=ДАТАЗНАЧ("1 " & A1)A1 содержит "январь 2026". Функция добавит день (1) и преобразует текст в дату.
Почему после копирования дат из Excel в Word они отображаются как числа?
При копировании Excel передаёт фактическое числовое значение (например, 45678). Чтобы сохранить формат, используйте Специальная вставка → Текст в Word или предварительно преобразуйте даты в текст с помощью ТЕКСТ.
Можно ли автоматически обновлять формат даты при изменении языка системы?
Нет, Excel не обновляет пользовательские форматы динамически. Если вам нужно, чтобы название месяца менялось с русского на английский при смене языка, используйте формулу с ЕСЛИ:
=ЕСЛИ(ЯЗЫК()="ru"; ТЕКСТ(A1;"мммм"); ТЕКСТ(A1;"[$-409]мммм"))
Как вывести дату в формате "10 января 2026 года" с правильным склонением?
Excel не поддерживает автоматическое склонение. Используйте вспомогательную таблицу с названиями месяцев в нужном падеже или функцию ВЫБОР:
=ДЕНЬ(A1) & " " & ВЫБОР(МЕСЯЦ(A1);"января";"февраля";"марта";...) & " " & ГОД(A1) & " года"
Почему функция РАЗНДАТ возвращает ошибку с моими датами?
РАЗНДАТ требует, чтобы обе даты были в числовом формате. Если одна из них текстовая, используйте ДАТАЗНАЧ для преобразования:
=РАЗНДАТ(ДАТАЗНАЧ("01.01.2026"); ДАТАЗНАЧ("01.01.2026"); "d")
— вернёт количество дней между датами.