Объединение даты в Excel: формулы, примеры и лайфхаки для корректного отображения

Работа с датами в Microsoft Excel часто требует их объединения с другим текстом, временем или другими датами. Например, вам может понадобиться создать отчёт с полем "Отчёт от 15.05.2026 14:30", где дата и время хранятся в отдельных ячейках. Или сконкатенировать дату рождения с фамилией для формирования уникального идентификатора. Казалось бы, простая задача — но здесь кроются подводные камни: Excel хранит даты как числа, и их прямое объединение через "&" или функцию СЦЕПИТЬ часто даёт неожиданные результаты вроде "45378" вместо "15.05.2026".

В этой статье мы разберём 5 проверенных способов объединения дат в Excel — от базовых формул до продвинутых функций с учётом локализации и форматов. Вы узнаете, как избежать ошибок с автоматическим преобразованием дат в числа, как объединять дату с текстом без потери форматирования, и почему функция ТЕКСТ становится вашим главным помощником в 80% случаев. А ещё — интерактивные примеры и таблица совместимости методов для разных версий Excel (включая Excel 365 и Excel 2019).

Если вы когда-нибудь получали в результате объединения что-то вроде 44197 вместо ожидаемой даты — эта статья для вас. Мы не только покажем рабочие формулы, но и объясним, почему Excel ведёт себя именно так, и как заставить программу выводить данные в нужном вам виде.

📊 Какой версии Excel вы пользуетесь?
Excel 365 (онлайн/десктоп)
Excel 2019
Excel 2016
Excel 2013 или старше
Не знаю

Почему дата в Excel превращается в число при объединении?

Прежде чем переходить к решениям, важно понять корень проблемы. В Excel даты хранятся как порядковые номера, где 1 соответствует 1 января 1900 года (в системе Windows) или 1 января 1904 года (на Mac). Например:

  • 📅 15.05.2026 для Excel — это число 45415.
  • ⏰ Время 14:30:00 — это дробная часть числа, например 0.60417.

Когда вы пытаетесь объединить ячейку с датой с текстом через оператор & или функцию СЦЕПИТЬ, Excel воспринимает содержимое ячейки как число, а не как отформатированную дату.

Пример ошибки:

=A1 & " " & B1

Если в A1 дата 15.05.2026, а в B1 время 14:30, результат будет не "15.05.2026 14:30", а "45415.60417". Это происходит потому, что Excel подставляет внутреннее числовое представление даты, а не её текстовый формат.

Вывод: чтобы получить читаемый результат, нужно явным образом преобразовать дату в текст с нужным форматом. И здесь на помощь приходит функция ТЕКСТ.

Способ 1: Функция ТЕКСТ — универсальное решение

Функция ТЕКСТ(значение; формат) позволяет преобразовать дату (или число) в текст с заданным форматом. Это самый надёжный способ объединения дат, так как вы полностью контролируете итоговый вид данных.

Синтаксис для объединения даты и времени:

=ТЕКСТ(A1; "дд.мм.гггг") & " " & ТЕКСТ(B1; "чч:мм")

Где:

  • 📌 A1 — ячейка с датой.
  • B1 — ячейка с временем.
  • 🔤 "дд.мм.гггг" и "чч:мм" — форматы вывода.

Примеры форматов для функции ТЕКСТ:

ФорматПример выводаОписание
"дд.мм.гг"15.05.24Краткая дата
"дд мммм гггг"15 мая 2026Дата с месяцем прописью
"дд.мм.гггг чч:мм"15.05.2026 14:30Дата + время
"[$-419]ддд, д мммм гггг"среда, 15 мая 2026День недели + дата (локализованно)

Важно: формат даты зависит от языковых настроек Excel. Например, в английской версии вместо "дд.мм.гггг" используется "mm/dd/yyyy".

Убедитесь, что ячейка содержит именно дату, а не текст|Проверьте региональные настройки Excel (Файл → Параметры → Язык)|Используйте точку с запятой (;) в формулах, если ваш Excel настроен на русский язык|Тестируйте формулу на примере с известной датой (например, 15.05.2026)-->

Способ 2: Функция КОНКАТЕНАЦИЯ (CONCAT) для сложных объединений

В новых версиях Excel (начиная с Excel 2016) появилась функция КОНКАТЕНАЦИЯ (или CONCAT в английской версии), которая заменяет устаревшую СЦЕПИТЬ. Её преимущество — возможность объединять не только отдельные ячейки, но и целые диапазоны.

Пример объединения даты, текста и времени:

=КОНКАТЕНАЦИЯ(ТЕКСТ(A1; "дд.мм.гггг"); " в "; ТЕКСТ(B1; "чч:мм"); ", отчёт сформирован")

Результат: 15.05.2026 в 14:30, отчёт сформирован.

Если вам нужно объединить дату с несколькими текстовыми полями, КОНКАТЕНАЦИЯ упрощает формулу:

=КОНКАТЕНАЦИЯ("Заказ №"; C1; " от "; ТЕКСТ(A1; "дд.мм.гггг"))

Где C1 — номер заказа.

Ограничение: в Excel 2013 и старше функции КОНКАТЕНАЦИЯ нет — используйте СЦЕПИТЬ или оператор &.

Способ 3: Объединение даты и времени в одну ячейку

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

Формула для объединения даты (A1) и времени (B1) в одно значение:

=A1 + B1

После этого примените к ячейке формат "дд.мм.гггг чч:мм" (правый клик → Формат ячеек → Числовые форматы → Другие форматы даты).

Пример:

  • 📅 A1 = 15.05.2026 (внутренне: 45415).
  • B1 = 14:30 (внутренне: 0.60417).
  • 📌 Результат: 45415.60417, который при правильном формате отобразится как 15.05.2026 14:30.

⚠️ Внимание: если в ячейке с временем указаны только часы (например, 14 вместо 14:30), Excel воспримет это как 14:00:00. Чтобы избежать ошибок, всегда вводите время в формате чч:мм или чч:мм:сс.

Способ 4: Использование Power Query для массового объединения

Если вам нужно объединить даты в большом объёме данных (например, в отчёте с тысячами строк), ручное прописывание формул неэффективно. В этом случае поможет инструмент Power Query (доступен в Excel 2016 и новее).

Пошаговая инструкция:

  1. Выделите ваш диапазон данных.
  2. Перейдите на вкладку ДанныеИз таблицы/диапазона (или Get Data → From Table/Range в английской версии).
  3. В открывшемся редакторе Power Query выберите столбец с датой → Преобразовать → Формат → Дата.
  4. Добавьте пользовательский столбец (Добавить столбец → Пользовательский столбец) с формулой:
    = Text.From([Дата], "ru-RU") & " " & Text.From([Время], "ru-RU")

    Где [Дата] и [Время] — названия ваших столбцов.

  5. Нажмите Закрыть и загрузить.

Преимущества Power Query:

  • ⚡ Обрабатывает миллионы строк без тормозов.
  • 🔄 Автоматически обновляет данные при изменении источника.
  • 🌍 Поддерживает локализацию (можно явно указать язык формата).

⚠️ Внимание: если после загрузки данные отображаются как числа (например, 4.54156E+04), проверьте формат столбца в итоговой таблице — измените его на Текстовый.

Способ 5: VBA-макрос для автоматизации

Для продвинутых пользователей, которым нужно регулярно объединять даты по одному шаблону, удобно создать пользовательскую функцию на VBA. Например, функция ОбъединитьДатаВремя, которая принимает ячейку с датой и ячейку с временем, и возвращает отформатированную строку.

Код макроса:

Function ОбъединитьДатаВремя(Дата As Range, Время As Range, Optional Разделитель As String = " ") As String

ОбъединитьДатаВремя = Format(Дата.Value, "dd.mm.yyyy") & Разделитель & Format(Время.Value, "hh:mm")

End Function

Как использовать:

  1. Нажмите Alt + F11, чтобы открыть редактор VBA.
  2. Вставьте код в модуль (Insert → Module).
  3. Теперь в Excel можно использовать функцию как обычную формулу:
    =ОбъединитьДатаВремя(A1; B1; " | ")

    Результат: 15.05.2026 | 14:30.

Преимущества VBA:

  • 🔧 Гибкость: можно добавить обработку ошибок или дополнительные параметры.
  • ⚡ Скорость: макросы работают быстрее формул на больших объёмах данных.
  • 📁 Сохранение: функция будет доступна во всех книгах, если сохранить её в Персональной книге макросов.
Как сохранить макрос в Персональную книгу макросов?

1. В редакторе VBA выберите Personal.xlsb в списке проектов (если её нет, создайте: Файл → Создать → Книга Excel 4.0 и сохраните как Personal.xlsb в папке XLSTART).

2. Вставьте код функции в модуль этой книги.

3. Теперь функция ОбъединитьДатаВремя будет доступна во всех ваших файлах Excel.

Типичные ошибки и как их избежать

Даже опытные пользователи Excel сталкиваются с проблемами при объединении дат. Вот самые распространённые ошибки и их решения:

ОшибкаПричинаРешение
Вместо даты отображается число (например, 45415)Excel воспринимает ячейку как число, а не как датуИспользуйте функцию ТЕКСТ с явным указанием формата
Формула возвращает #ЗНАЧ!Ячейка содержит текст вместо даты/времениПроверьте формат ячейки (Формат ячеек → Дата) или используйте ДАТАЗНАЧ для преобразования текста в дату
Дата отображается в американском формате (mm/dd/yyyy)Неправильные региональные настройкиЯвно укажите формат в функции ТЕКСТ, например "дд.мм.гггг"
Время округляется до часов (например, 14:00 вместо 14:30)В ячейке с временем не указаны минутыВводите время в формате чч:мм или используйте ВРЕМЯЗНАЧ для корректного преобразования

⚠️ Внимание: если вы копируете данные из внешних источников (например, с сайта или из ), даты могут импортироваться как текст. Чтобы преобразовать их в настоящие даты, используйте функцию ДАТАЗНАЧ:
=ДАТАЗНАЧ(A1)

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

FAQ: Ответы на частые вопросы

Как объединить дату и текст в одной ячейке, чтобы дата обновлялась автоматически?

Используйте формулу с функцией ТЕКСТ и ссылкой на ячейку с датой. Например:

=ТЕКСТ(СЕГОДНЯ(); "дд.мм.гггг") & " — сегодняшняя дата"

Функция СЕГОДНЯ() будет автоматически обновлять дату при каждом открытии файла.

Почему после объединения дата и время разделяются точкой, а не пробелом?

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

=ТЕКСТ(A1; "дд.мм.гггг") & " " & ТЕКСТ(B1; "чч:мм")

Или измените разделитель в настройках Windows (Панель управления → Региональные стандарты → Дополнительные параметры → Разделитель целой и дробной части).

Можно ли объединить дату и время так, чтобы результат оставался датой (а не текстом) для сортировки?

Да, используйте сложение ячеек:

=A1 + B1

Затем примените к ячейке формат "дд.мм.гггг чч:мм". В этом случае Excel будет воспринимать результат как дату-время, а не как текст, что позволит сортировать и фильтровать данные.

Как объединить дату с текстом на английском (например, "May 15, 2026")?

Используйте функцию ТЕКСТ с английским форматом:

=ТЕКСТ(A1; "[$-409]mmmm dd, yyyy")

Где [$-409] — идентификатор английского языка. Для русского языка используйте [$-419].

Почему функция ТЕКСТ возвращает ошибку #ЗНАЧ! в Excel 2010?

В Excel 2010 и старше функция ТЕКСТ требует, чтобы первый аргумент был числом или датой. Если ваша ячейка содержит текст, который выглядит как дата (например, "15.05.2026"), сначала преобразуйте её с помощью ДАТАЗНАЧ:

=ТЕКСТ(ДАТАЗНАЧ(A1); "дд.мм.гггг")