Работа с датами и временем в Microsoft Excel часто требует преобразований: то нужно объединить дату с временем, то наоборот — оставить только календарную часть без часов и минут. Эта задача возникает при импорте данных из баз, логов систем, или когда вы получаете отчёты с временными метками. Например, в ячейке стоит 15.05.2026 14:30:45, а вам требуется оставить только 15.05.2026.
Проблема в том, что Excel хранит дату и время как единое число (количество дней с 1900 года), где дробная часть отвечает за время. Просто удалить символы после пробела не получится — это нарушит внутренний формат данных. В статье разберём 5 проверенных способов: от элементарного форматирования до формул для автоматизации. Каждый метод подходит для разных сценариев: одни сохранят исходные данные, другие превратят их в текст или округлённые числа.
Важно понимать: выбор способа зависит от того, что вы планируете делать с данными дальше. Нужно ли сохранять возможность сортировки по дате? Или достаточно статического текстового значения? Мы рассмотрим плюсы и минусы каждого подхода, а также типичные ошибки, которые портят результаты.
Почему нельзя просто удалить время вручную
Многие пользователи пытаются решить проблему «в лоб»: выделяют ячейку, стирают часть текста после пробела или используют Найти и заменить для удаления символов. Это работает только до первой пересчётки таблицы или изменения формата.
Дело в том, что Excel воспринимает 15.05.2026 14:30:45 не как текст, а как число 45412,60432 (где 45412 — дни с 1900 года, а 0,60432 — доля суток, соответствующая 14:30:45). При ручном редактировании вы разрушаете эту структуру, и Excel начинает воспринимать ячейку как текст, теряя возможность:
- 📅 Сортировать данные по дате
- 📊 Строить временные графики
- ⏳ Использовать в формулах (например, для расчёта разницы в днях)
Ещё одна ловушка: если вы скопируете «обрезанную» дату в другую программу (например, в 1С или Google Sheets), она может отобразиться некорректно — как число или дата 1900 года. Поэтому всегда используйте специализированные инструменты Excel для работы с датами.
Способ 1: Форматирование ячеек (самый быстрый метод)
Если вам нужно просто скрыть время при отображении, но сохранить его в данных (например, для последующих расчётов), используйте форматирование ячеек. Это не удаляет время физически, а лишь маскирует его.
Инструкция:
- Выделите ячейки с датами и временем.
- Нажмите
Ctrl+1(или правой кнопкой →Формат ячеек). - Вкладка
Число→ категорияДата. - Выберите формат без времени, например
14.03.2012или14 марта 2012 г..
Преимущества метода:
- ⚡ Мгновенный результат без формул
- 🔄 Обратимость (время остаётся в данных)
- 📱 Работает в Excel Online и мобильной версии
Недостатки:
- 🔍 В строке формул время всё равно видно
- 📊 Не подходит, если нужно передать данные без времени в другую систему
Выделили все нужные ячейки|Проверили формат в строке состояния|Убедились, что время скрыто, но не удалено|Сохранили файл после изменений-->
⚠️ Внимание: Если после форматирования дата отображается как ########, расширьте столбец — ячейка слишком узкая для нового формата.
Способ 2: Функция ЦЕЛОЕ (INT) для округления
Функция =ЦЕЛОЕ() (или =INT() в английской версии) отсекает дробную часть числа, оставляя только целую. Поскольку Excel хранит даты как числа, это идеальный способ убрать время.
Формула:
=ЦЕЛОЕ(A1)
Как это работает:
- 📅
15.05.2026 14:30:45→45412,60432(внутренний формат) - 🔢
ЦЕЛОЕ(45412,60432)→45412(целая часть) - 🗓️
45412→15.05.2026 00:00:00(Excel интерпретирует как начало дня)
Чтобы результат отображался без нулевого времени, примените к ячейке с формулой формат даты (как в Способе 1).
| Исходные данные (A1) | Формула | Результат (с форматированием) |
|---|---|---|
15.05.2026 14:30:45 |
=ЦЕЛОЕ(A1) |
15.05.2026 |
01.01.2026 23:59:59 |
=INT(A1) |
01.01.2026 |
31.12.2023 08:15:00 |
=ТРУНЦ(A1) |
31.12.2023 |
Альтернативная функция — =ТРУНЦ(A1) (отсекает дробную часть без округления). Результат идентичен ЦЕЛОЕ для положительных чисел, но может отличаться для отрицательных дат (до 1900 года).
Способ 3: Функция ДЕНЬ, МЕСЯЦ, ГОД (для текстового результата)
Если вам нужен текстовый результат (например, для отчётов, где даты не должны участвовать в вычислениях), комбинируйте функции ДЕНЬ, МЕСЯЦ и ГОД с оператором конкатенации &.
Формула:
=ДЕНЬ(A1)&"."&МЕСЯЦ(A1)&"."&ГОД(A1)
Примеры результатов:
- 📅
15.05.2026 14:30:45→15.5.2026(текст) - 📅
03.11.2023 00:00:01→3.11.2023
Чтобы добавить ведущие нули (например, 05 вместо 5), используйте функцию ТЕКСТ:
=ТЕКСТ(ДЕНЬ(A1);"00")&"."&ТЕКСТ(МЕСЯЦ(A1);"00")&"."&ГОД(A1)
⚠️ Внимание: Текстовые даты нельзя использовать в формулах для расчёта разницы в днях или фильтрации по датам. Для этого сначала преобразуйте их обратно в дату функцией =ДАТАЗНАЧ().
Как вернуть дату из текста?
Если у вас текстовая дата (например, "15.05.2026"), преобразуйте её обратно в дату формулой:
=ДАТАЗНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;".";"/");" ";""))
Это заменит точки на слэши (формат, понятный Excel) и удалит пробелы.
Способ 4: Функция ДАТА (для создания новой даты)
Функция =ДАТА() позволяет собрать дату из отдельных компонентов (год, месяц, день), игнорируя время. Это полезно, если вы хотите гарантированно получить «чистую» дату без риска ошибок округления.
Формула:
=ДАТА(ГОД(A1); МЕСЯЦ(A1); ДЕНЬ(A1))
Преимущества метода:
- 🛡️ 100% удаляет время (в отличие от
ЦЕЛОЕ, который теоретически может оставить микросекунды) - 🔄 Сохраняет формат даты для дальнейших вычислений
- 📅 Работает даже с датами до 1900 года (если включена поддержка)
Пример:
| Исходная дата (A1) | Формула | Результат |
|---|---|---|
15.05.2026 23:59:59 |
=ДАТА(ГОД(A1);МЕСЯЦ(A1);ДЕНЬ(A1)) |
15.05.2026 |
01.01.1900 12:00:00 |
=ДАТА(2026;5;15) |
15.05.2026 |
Этот способ особенно полезен, если вы работаете с динамическими датами, которые обновляются (например, через =СЕГОДНЯ() или импорт из внешних источников).
Способ 5: Power Query (для больших массивов данных)
Если у вас тысячи строк с датами и временем, ручное применение формул неэффективно. В этом случае используйте Power Query — инструмент для преобразования данных, встроенный в Excel 2016 и новее.
Пошаговая инструкция:
- Выделите таблицу с датами.
- Перейдите на вкладку
Данные→Из таблицы/диапазона(илиПолучить данные→Из таблицы). - В открывшемся редакторе Power Query выделите столбец с датами.
- На вкладке
ПреобразоватьвыберитеДата/время→Дата. - Нажмите
Закрыть и загрузить.
Преимущества Power Query:
- ⚡ Обрабатывает миллионы строк за секунды
- 🔄 Не требует формул (данные обновляются при изменении источника)
- 📊 Сохраняет связь с исходными данными
Если Power Query не доступен в вашей версии Excel, используйте надстройку «Анализ данных» или макрос на VBA:
Sub RemoveTime()
Dim cell As Range
For Each cell In Selection
cell.Value = Int(cell.Value)
cell.NumberFormat = "dd.mm.yyyy"
Next cell
End Sub
⚠️ Внимание: Макросы работают только в файлах с расширением .xlsm и требуют включения поддержки VBA в настройках безопасности Excel.
Типичные ошибки и как их избежать
Даже опытные пользователи Excel сталкиваются с проблемами при работе с датами. Вот самые распространённые ошибки и способы их решения:
- 🗓️ Дата отображается как число: Примените формат
Датак ячейке (см. Способ 1). Если это текст, используйте=ДАТАЗНАЧ(). - ⏰ Время не удаляется функцией ЦЕЛОЕ: Убедитесь, что ячейка содержит именно дату, а не текст. Проверить можно по выравниванию: даты выравниваются вправо, текст — влево.
- 📉 Ошибка #ЗНАЧ! в формулах: Возникает, если в ячейке текст вместо даты. Используйте
=ДАТАЗНАЧ()для преобразования. - 🔢 Неправильный порядок дня/месяца: Excel может путать форматы
дд.мм.ггггимм.дд.гггг. Задайте явный формат в настройках региональных параметров.
Критическая ошибка: Если после удаления времени дата сдвинулась на 1 день назад, это означает, что исходное значение было отрицательным (до 1900 года). В этом случае используйте функцию ДАТА, а не ЦЕЛОЕ.
Чтобы избежать проблем, всегда проверяйте:
- Формат исходных данных (дата или текст?).
- Региональные настройки Excel (влияют на интерпретацию дат).
- Наличие скрытых символов (пробелов, неразрывных пробелов).
FAQ: Частые вопросы
Можно ли убрать время без формул, чтобы данные остались датами?
Да, используйте форматирование ячеек (Способ 1). Это скрывает время визуально, но сохраняет его в данных. Если нужно физически удалить время, применяйте формулы из Способов 2–4.
Почему после применения ЦЕЛОЕ дата стала 30.12.1899?
Это означает, что в ячейке было текстовое значение, которое Excel интерпретировал как 0 (ноль дней с 1900 года = 30.12.1899). Используйте =ДАТАЗНАЧ(), чтобы преобразовать текст в дату.
Как убрать время в Google Таблицах?
Все описанные методы работают и в Google Sheets, за исключением Power Query. Вместо него используйте формулу =INT(A1) или =DATE(YEAR(A1); MONTH(A1); DAY(A1)).
Можно ли автоматизировать удаление времени при импорте данных?
Да, используйте Power Query (Способ 5) или настройте правила преобразования при импорте из CSV/ТXT. В макросах применяйте код из раздела про VBA.
Почему после копирования даты в Word время снова появляется?
Word может игнорировать форматирование Excel. Чтобы скопировать только дату, сначала преобразуйте её в текст (Способ 3) или используйте Специальная вставка → Значения.