Как в Excel перевести дату со временем в обычную дату: все способы

Работа с датами в Microsoft Excel часто становится головной болью для пользователей, особенно когда ячейки содержат комбинированные значения даты и времени. Вы когда-нибудь сталкивались с ситуацией, когда в отчёте вместо аккуратной даты 15.05.2026 красуется 15.05.2026 14:30:45? Или пытались построить сводную таблицу, но Excel упорно группировал данные по часам вместо дней? Проблема в том, что программа воспринимает такие ячейки как полноценные метки времени, а не как календарные даты.

На практике чистые даты без времени требуются в 80% бизнес-задач: от создания календарных планов до анализа временных рядов. К счастью, существует как минимум 5 способов отделить дату от времени — от элементарного форматирования до продвинутых формул. В этой статье мы разберём каждый метод с нюансами, которые не упоминают даже в официальной документации Microsoft. Вы узнаете, какой способ самый быстрый, какой сохраняет исходные данные, а какой подходит для автоматизации через VBA.

Особое внимание уделим типичным ошибкам: например, почему функция ДЕНЬ() возвращает неверные результаты при работе с временными метками, или как избежать преобразования дат в числовые значения при экспорте в другие системы. Для наглядности приведём сравнительную таблицу всех методов с оценкой их эффективности для разных версий Excel (2010–2023). А в конце статьи вы найдёте FAQ-блок с ответами на самые неочевидные вопросы, которые пользователи задают на форумах.

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

Почему Excel хранит дату и время вместе

Чтобы понять, как правильно отделить дату от времени, нужно разобраться в внутренней логике Excel. Программа воспринимает любые временные метки как серийные числа: целая часть отвечает за дату, а дробная — за время. Например, значение 45467,58333 для Excel означает:

  • 📅 45467 — количество дней с 1 января 1900 года (это 15 мая 2026 года)
  • 0,58333 — доля суток, соответствующая 14:00 (так как 24 часа × 0,58333 ≈ 14 часов)

Эта система объясняет, почему простое удаление времени через форматирование не всегда работает: вы лишь скрываете дробную часть, но она продолжает влиять на вычисления. Например, если вы отсортируете ячейки с датами 15.05.2026 08:00 и 15.05.2026 20:00 по возрастанию, вторая строка окажется ниже — несмотря на одинаковую календарную дату.

Критическая особенность: в Excel 2019 и новее при копировании ячеек с датой и временем в другие программы (например, в Power BI или Google Sheets) дробная часть может автоматически округляться, что приведёт к потере точности. Поэтому для дальнейшей обработки данных лучше сразу отделять дату от времени на уровне исходных ячеек.

Способ 1: Форматирование ячеек (визуальное решение)

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

  1. Выделите ячейки с датой и временем (например, A1:A10).
  2. Нажмите правой кнопкой мыши и выберите Формат ячеек... (или используйте горячие клавиши Ctrl+1).
  3. В открывшемся окне перейдите на вкладку ЧислоДата.
  4. Выберите формат без времени, например 14.03.2012 или 14 марта 2012 г..

⚠️

Внимание: Этот метод не удаляет время из данных — он лишь маскирует его. Если выLater используете эту ячейку в формулах (например, =A1+B1), Excel будет учитывать скрытую временную часть. Для анализа данных такой подход не подходит.

☑️ Проверка корректности форматирования

Выполнено: 0 / 4

Пример: если в ячейке было 15.05.2026 18:30, после форматирования вы увидите 15.05.2026, но в строке формул останется полное значение 15.05.2026 18:30:00.

Способ 2: Функция ЦЕЛОЕ() — быстрое отделение даты

Для тех, кто нуждается в реальном удалении времени (а не только его сокрытии), подходит функция ЦЕЛОЕ(). Она отсекает дробную часть числа, оставляя только целую — то есть дату. Синтаксис прост:

=ЦЕЛОЕ(A1)

Где A1 — ячейка с исходной датой и временем. Результат можно отформатировать как дату (через Формат ячеек), чтобы он выглядел привычно.

🔹 Преимущества метода:

  • ⚡ Сохраняет исходные данные (не изменяет их, а создаёт новую ячейку с результатом).
  • 📊 Подходит для дальнейших вычислений (например, разницы между датами).
  • 🔄 Работает во всех версиях Excel, включая Excel Online.

⚠️

Внимание: Если ваша дата хранится как текст (например, после импорта из CSV), функция ЦЕЛОЕ() вернёт ошибку. Сначала преобразуйте текст в дату с помощью ДАТАЗНАЧ() или ЗНАЧЕН().

Способ 3: Функции ДАТА(), ГОД(), МЕСЯЦ(), ДЕНЬ() — для гибкого управления

Когда нужно не просто убрать время, а извлечь конкретные компоненты даты (год, месяц, день), пригодятся отдельные функции:

  • 📅 ДАТА() — создаёт дату из год/месяц/день.
  • 🗓️ ГОД(), МЕСЯЦ(), ДЕНЬ() — извлекают соответствующие части.

Пример формулы для извлечения чистой даты:

=ДАТА(ГОД(A1); МЕСЯЦ(A1); ДЕНЬ(A1))

Этот метод полезен, если вам нужно:

  • 🔹 Разделить дату на отдельные столбцы (год, месяц, день).
  • 🔹 Создать новую дату на основе части исходной (например, заменить год).
  • 🔹 Обработать даты с ошибками (например, 32.01.202601.02.2026).

📌 Важно: Если исходная ячейка содержит текст (например, "15 мая 2026 14:30"), сначала преобразуйте её в дату с помощью ДАТАЗНАЧ():

=ДАТАЗНАЧ(ЛЕВСИМВ(A1; НАЙТИ(" ";A1)-1))

Способ 4: Текстовые функции (ЛЕВСИМВ, ПОИСК, ПСТР) — для нестандартных форматов

Иногда даты хранятся в неудобных текстовых форматах, например:

  • 📌 "2026-05-15T14:30:00" (формат ISO 8601).
  • 📌 "15.05.2026 г., 14:30" (с постфиксами).
  • 📌 "May 15, 2026 2:30 PM" (англоязычный формат).

В таких случаях поможет комбинация текстовых функций. Например, для извлечения даты из "2026-05-15T14:30:00":

=ДАТАЗНАЧ(ЛЕВСИМВ(A1; 10))

А для формата "15.05.2026 г., 14:30":

=ДАТАЗНАЧ(ПСТР(A1; 1; НАЙТИ(" г."; A1)-1))

⚠️

Внимание: Текстовые функции чувствительны к регистру и символам-разделителям. Если в данных встречаются пробелы вместо точек или запятые вместо точек с запятой, формулы вернут ошибку. Используйте ПОДСТАВИТЬ() для унификации форматов:
=ДАТАЗНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1; ","; "."); " "; ""))
Как обработать англоязычные даты?

Для формата "May 15, 2026" используйте:

=ДАТАЗНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1; "Jan"; "01"); "Feb"; "02") & "...)

(замените все месяцы на их числовые эквиваленты).

Способ 5: Power Query — для массовой обработки

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

  1. Выделите исходные данные и перейдите на вкладку ДанныеИз таблицы/диапазона.
  2. В открывшемся редакторе Power Query выделите столбец с датами.
  3. Нажмите ПреобразоватьДата/времяДата.
  4. Сохраните изменения и загрузите данные обратно в Excel.

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

  • ⚡ Обрабатывает миллионы строк за секунды.
  • 🔄 Сохраняет связь с исходными данными (обновляется при изменении источника).
  • 📊 Позволяет комбинировать с другими преобразованиями (например, разделить дату на год/месяц/день).

⚠️

Внимание: При импорте данных из CSV или SQL Excel может автоматически распознать столбец как текст. В этом случае перед преобразованием в дату используйте команду ПреобразоватьТип данныхДата/время.
Метод Сохраняет исходные данные Подходит для больших данных Требует знания формул Работает с текстовыми датами
Форматирование ячеек ✅ Да ✅ Да ❌ Нет ❌ Нет
ЦЕЛОЕ() ✅ Да ⚠️ Умеренно ✅ Да ❌ Нет
ДАТА()/ГОД()/... ✅ Да ⚠️ Умеренно ✅ Да ✅ Да (с ДАТАЗНАЧ())
Текстовые функции ✅ Да ❌ Нет ✅ Да ✅ Да
Power Query ✅ Да ✅ Да ⚠️ Минимально ✅ Да

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

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

🔴 Ошибка 1: Дата превращается в число

Если после применения формулы вы видите 45467 вместо 15.05.2026, значит, ячейка отформатирована как Общий формат. Решение: выделите ячейку → Формат ячеекДата.

🔴 Ошибка 2: Функция ДЕНЬ() возвращает неверное значение

Это происходит, если ячейка содержит текст, а не дату. Проверьте с помощью ЕТЕКСТ():

=ЕТЕКСТ(A1)

Если результат ИСТИНА, используйте ДАТАЗНАЧ() или ЗНАЧЕН().

🔴 Ошибка 3: После копирования даты сбиваются

При экспорте в CSV или другие программы Excel может округлять дробную часть. Чтобы избежать потерь, предварительно отделите дату от времени любым из описанных методов.

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

Можно ли удалить время из даты без формул?

Да, но только визуально — через форматирование ячеек (см. Способ 1). Однако это не удалит время из самих данных, а лишь скрывает его при отображении. Для реального удаления используйте формулы или Power Query.

Почему после применения ЦЕЛОЕ() дата отображается как число?

Это происходит, потому что ячейка с результатом имеет формат Общий. Измените формат на Дата через контекстное меню (Формат ячеек...).

Как отделить время от даты (оставить только часы и минуты)?

Используйте формулу:

=A1-ЦЕЛОЕ(A1)

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

=ТЕКСТ(A1-ЦЕЛОЕ(A1); "ч:мм")

Можно ли автоматизировать удаление времени для новых данных?

Да, с помощью Power Query или макросов VBA. Например, этот код будет удалять время при вводе в столбец A:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("A:A")) Is Nothing Then

Application.EnableEvents = False

On Error Resume Next

Target.Value = Int(Target.Value)

Target.NumberFormat = "dd.mm.yyyy"

Application.EnableEvents = True

End If

End Sub

Вставьте его в модуль листа через Alt+F11Microsoft Excel ObjectsЛист1 (Sheet1).

Почему в сводной таблице даты с временем группируются по часам?

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

  1. Добавьте новый столбец с формулой =ЦЕЛОЕ(A1).
  2. Используйте этот столбец как источник для группировки.

Или измените источник данных в настройках сводной таблицы.