Округление дат в Excel: от дней до десятилетий — полное руководство с формулами

Работа с датами в Microsoft Excel часто требует не только точных вычислений, но и их упрощения. Округление дат — это не просто математическая операция, а инструмент для анализа временных рядов, группировки данных по периодам (месяцам, кварталам) или приведения разрозненных записей к единому формату. Например, финансовые отчёты обычно оперируют датами без часов и минут, а маркетологи анализируют продажи по неделям, игнорируя конкретные дни.

В отличие от округления чисел, где достаточно функции ОКРУГЛ(), даты в Excel хранятся как последовательные номера (начиная с 1 января 1900 года). Это означает, что стандартные методы округления могут дать неожиданные результаты. В статье разберём 5 проверенных способов округлить дату — от простого отсечения времени до сложных календарных преобразований, а также покажем, как избежать типичных ошибок при работе с временными метками.

Перед тем как приступить, убедитесь, что ваши данные действительно хранятся как даты, а не как текст. Проверить это можно, выделив ячейку: если в строке формул отображается число (например, 45341 вместо 15.03.2026), значит, Excel распознаёт значение как дату. Если нет — используйте функцию ДАТАЗНАЧ() для преобразования.

═══

1. Округление даты до начала дня (убираем время)

Самая распространённая задача — удалить часы, минуты и секунды, оставив только календарную дату. Это актуально для логов, где время фиксируется автоматически, но для анализа нужны только дни. Например, если в ячейке A1 записано 15.03.2026 14:30:45, а вам требуется 15.03.2026 00:00:00.

Для этого используйте одну из трёх функций:

  • 📅 ЦЕЛОЕ() — отсекает дробную часть (время): =ЦЕЛОЕ(A1). Работает для положительных чисел, поэтому подходит для дат после 1900 года.
  • 📅 ОКРУГЛВНИЗ() — округление вниз до ближайшего целого: =ОКРУГЛВНИЗ(A1;1). Более надёжный вариант, если дата может быть отрицательной (до 1900 года).
  • 📅 ТДАТА() — возвращает текущую дату и время, но если передать ей ячейку с датой, вернёт только дату: =ТДАТА(A1) (работает в новых версиях Excel).

Пример: если в A1 записано 15.03.2026 23:59:59, все три формулы вернут 15.03.2026. Но есть нюанс: ЦЕЛОЕ() и ОКРУГЛВНИЗ() сохранят формат ячейки, а ТДАТА() может сбросить его к общему.

⚠️ Внимание: Если после применения функции дата отображается как число (например, 45341), измените формат ячейки на Дата через контекстное меню Формат ячеек → Числовые форматы → Дата.

═══

2. Округление до начала месяца, квартала или года

Для группировки данных по периодам (например, для ежемесячных отчётов) требуется округлить дату до первого числа месяца, квартала или года. Здесь поможет комбинация функций ДАТА(), ГОД(), МЕСЯЦ() и ДЕНЬ().

Формулы для округления:

  • 📅 До начала месяца: =ДАТА(ГОД(A1); МЕСЯЦ(A1); 1). Например, 15.03.2026 станет 01.03.2026.
  • 📅 До начала квартала: =ДАТА(ГОД(A1); ОКРУГЛВНИЗ(МЕСЯЦ(A1)/3;0)*3-2; 1). Для 15.03.2026 результат — 01.01.2026 (первый квартал).
  • 📅 До начала года: =ДАТА(ГОД(A1); 1; 1). Любая дата 2026 года преобразуется в 01.01.2026.

Для округления до конца периода (последний день месяца/квартала/года) используйте функцию КОНМЕСЯЦА() (в новых версиях Excel) или комбинацию:

=ДАТА(ГОД(A1); МЕСЯЦ(A1)+1; 0)

Эта формула вернёт последний день текущего месяца (например, для 15.03.202631.03.2026).

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

═══

3. Округление до ближайшего дня (вверх или вниз)

Если нужно привести дату к ближайшему целому дню (например, для расчёта сроков доставки), используйте функции ОКРУГЛ(), ОКРУГЛВВЕРХ() или ОКРУГЛВНИЗ(). Но здесь важно помнить: Excel хранит даты как числа, где 1 = 1 день. Поэтому для округления до дня используйте шаг 1.

Примеры:

  • 📅 Округление вниз (до начала дня): =ОКРУГЛВНИЗ(A1;1). Для 15.03.2026 14:00 результат — 15.03.2026 00:00.
  • 📅 Округление вверх (до конца дня): =ОКРУГЛВВЕРХ(A1;1). Для 15.03.2026 14:00 результат — 16.03.2026 00:00 (начало следующего дня).
  • 📅 Округление до ближайшего дня: =ОКРУГЛ(A1;1). Для 15.03.2026 12:00 результат — 15.03.2026 00:00, а для 15.03.2026 18:0016.03.2026 00:00.

Критичный нюанс: функции округления в Excel не учитывают время как отдельную единицу. Если вам нужно округлить только часы (например, до ближайшего часа), сначала извлеките время с помощью =A1-ЦЕЛОЕ(A1), затем округлите его, а потом сложите с датой.

☑️ Проверка перед округлением дат

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

═══

4. Округление до недели или рабочего дня

Для анализа еженедельных данных (например, продаж по понедельникам) или планирования задач по рабочим дням потребуются более сложные формулы. Здесь поможет функция ДЕНЬНЕД(), которая возвращает номер дня недели (от 1 до 7).

Примеры:

  • 📅 Округление до начала недели (понедельник):
    =A1-ДЕНЬНЕД(A1;2)+1

    Для 15.03.2026 (пятница) результат — 11.03.2026 (понедельник той же недели).

  • 📅 Округление до конца недели (воскресенье):
    =A1+7-ДЕНЬНЕД(A1;2)

    Для 15.03.2026 результат — 17.03.2026.

  • 📅 Округление до ближайшего рабочего дня: Здесь нужен ЕСЛИ() с проверкой выходных. Например, чтобы округлить до следующего понедельника, если текущий день — суббота или воскресенье:
    =ЕСЛИ(ДЕНЬНЕД(A1;2)>5; A1+8-ДЕНЬНЕД(A1;2); A1)

Для округления до последнего рабочего дня месяца комбинируйте КОНМЕСЯЦА() и ДЕНЬНЕД():

=КОНМЕСЯЦА(A1;0)-ЕСЛИ(ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)>5; ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)-5; 0)
⚠️ Внимание: В разных странах начало недели может отличаться (в России — понедельник, в США — воскресенье). Убедитесь, что второй аргумент ДЕНЬНЕД() соответствует вашему региону: 2 — неделя начинается с понедельника.

═══

5. Округление до десятилетия или века

Для исторических данных или долгосрочных прогнозов может потребоваться округлить дату до десятилетия (например, 1980-е) или века (XX век). Здесь используйте функции ГОД() и арифметические операции.

Примеры:

  • 📅 Округление до начала десятилетия:
    =ДАТА(ОКРУГЛВНИЗ(ГОД(A1)/10;0)*10; 1; 1)

    Для 15.03.1987 результат — 01.01.1980.

  • 📅 Округление до конца десятилетия:
    =ДАТА(ОКРУГЛВНИЗ(ГОД(A1)/10;0)*10+9; 12; 31)

    Для 15.03.1987 результат — 31.12.1989.

  • 📅 Округление до века:
    =ДАТА(ОКРУГЛВНИЗ(ГОД(A1)/100;0)*100; 1; 1)

    Для 15.03.1987 результат — 01.01.1900 (XX век).

Для визуализации таких данных удобно использовать условное форматирование или сводные таблицы с группировкой по десятилетиям. Например, можно выделить цветом все даты 1980-х годов:

=И(ГОД(A1)>=1980; ГОД(A1)<=1989)
Исходная датаОкругление до десятилетияОкругление до века
15.03.198701.01.198001.01.1900
22.11.202601.01.202001.01.2000
31.12.189901.01.189001.01.1800
01.01.200001.01.200001.01.2000

═══

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

Округление дат в Excel чревато ошибками, если не учитывать особенности хранения временных меток. Вот самые распространённые проблемы и их решения:

  • Дата отображается как число: Это означает, что формат ячейки сбросился на Общий. Исправьте через Главная → Формат → Формат ячеек → Дата.
  • Функция возвращает #ЗНАЧ!: Вероятно, в ячейке текст, а не дата. Проверьте с помощью ЕТЕКСТ() или преобразуйте через ДАТАЗНАЧ().
  • Некорректное округление кварталов: Ошибка в формуле для расчёта начала квартала. Убедитесь, что используете ОКРУГЛВНИЗ(МЕСЯЦ(A1)/3;0)*3-2, а не просто МЕСЯЦ(A1)/3.
  • Смещение на 4 года при округлении до века: Это происходит из-за того, что Excel считает 1900 год високосным (ошибка наследия Lotus 1-2-3). Для точных исторических расчётов используйте альтернативные календарные системы.

Уникальный случай: если вы работаете с датами до 1900 года (например, в астрономии или истории), Excel не поддерживает их напрямую. Используйте текстовый формат или специализированные надстройки, такие как XLDate.

Почему Excel неправильно считает 1900 год високосным?

В 1900 году не было 29 февраля, но Excel (следуя ошибке Lotus 1-2-3) считает его високосным. Это влияет на разницу между датами до/после 1900 года. Для точных расчётов используйте функцию ДАТАРАЗН() или корректируйте результат вручную.

═══

7. Автоматизация округления с помощью Power Query

Если вам нужно округлить сотни или тысячи дат, ручной ввод формул неэффективен. В этом случае поможет Power Query — инструмент для преобразования данных, встроенный в Excel 2016+ и Office 365.

Алгоритм действий:

  1. Выделите таблицу с датами и нажмите Данные → Из таблицы/диапазона (вкладка Power Query).
  2. В редакторе запросов выделите столбец с датами.
  3. Перейдите на вкладку Преобразовать и выберите:
    • 📅 Дата → Начало дня (аналог ЦЕЛОЕ()),
    • 📅 Дата → Начало месяца,
    • 📅 Дата → Начало года.
  • Нажмите Закрыть и загрузить, чтобы вернуть данные в Excel.
  • Преимущество Power Query — возможность сохранять шаги преобразования и обновлять данные одним кликом. Например, если вы ежемесячно получаете новый отчёт с датами, достаточно обновить запрос, и все округления применятся автоматически.

    ═══

    FAQ: Частые вопросы об округлении дат в Excel

    Можно ли округлить дату до ближайшего часа или минуты?

    Да, но для этого сначала нужно изолировать временную часть. Например, чтобы округлить время до часа:

    =ЦЕЛОЕ(A1) + ОКРУГЛ((A1-ЦЕЛОЕ(A1))*24;0)/24

    Здесь (A1-ЦЕЛОЕ(A1))*24 извлекает часы, а /24 преобразует их обратно в долю дня.

    Почему функция ОКРУГЛ() не работает с датами?

    ОКРУГЛ() работает, но округляет дату как число. Например, =ОКРУГЛ(45341,5;0) (где 45341,5 — это 15.03.2026 12:00) вернёт 45342 (16.03.2026), так как 0,5 округляется до 1. Чтобы округлить только время, используйте отдельные функции для часов/минут.

    Как округлить дату до ближайшего рабочего дня, исключая праздники?

    Для этого нужна пользовательская функция на VBA или список праздников. Пример формулы с проверкой выходных и праздников (B1:B10 — список праздничных дат):

    =ЕСЛИ(ИЛИ(ДЕНЬНЕД(A1;2)>5; СЧЁТЕСЛИ($B$1:$B$10;A1)>0); A1+1; A1)

    Эта формула проверяет, попадает ли дата на выходной или праздник, и прибавляет 1 день, если да.

    Можно ли округлить дату в Google Таблицах?

    Да, все описанные функции работают и в Google Sheets, за исключением ТДАТА() (вместо неё используйте =ЦЕЛОЕ(A1)). Также в Google Sheets есть функция =DATEYEAR() для извлечения года, но для округления она не нужна.

    Как округлить дату до ближайшей пятницы?

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

    =A1 + (5 - ДЕНЬНЕД(A1; 2) + 7) МОД 7

    Здесь ДЕНЬНЕД(A1;2) возвращает номер дня недели (1=понедельник), а МОД 7 корректирует смещение.