Расчет новых дат в Excel: от простого сложения до учета праздников

Иван Корнев·13.04.2026·4 мин

Чтобы прибавить к дате в Excel нужное количество дней, используйте простую арифметику для календарных дней (=A1+10) или функцию WORKDAY для рабочих дней с учетом выходных и праздников (=WORKDAY(A1;10;список_праздников)). Эти методы позволяют автоматически строить графики проектов, рассчитывать сроки сдачи задач и планировать отпуска без ручного пересчета календаря.

Простое сложение: работа с календарными днями

В основе работы с датами в Excel лежит их хранение в виде последовательных чисел (серийных номеров), где 1 января 1900 года — это число 1. Благодаря этому к датам можно применять обычную арифметику.

Базовая формула:

=A1 + N

Где A1 — ячейка с исходной датой, а N — количество дней, которое нужно прибавить.

Пример: Если в ячейке A1 стоит дата 13.04.2026, а вам нужно узнать дату через 15 дней: =A1 + 15 вернет 28.04.2026.

Для вычитания дней просто замените знак плюс на минус: =A1 - 7 отнимет одну неделю от даты.

Этот метод учитывает все дни подряд, включая субботы, воскресенья и государственные праздники. Он идеален для расчета сроков годности продуктов, периодов аренды или биологических циклов.

Учет рабочего графика: функция WORKDAY

Для бизнес-задач, где важны только будни, простая арифметика не подходит. Здесь используется функция WORKDAY (в русской версии Excel — РАБДЕНЬ). Она автоматически пропускает субботу и воскресенье.

Синтаксис:

=WORKDAY(start_date; days; [holidays])
  • start_date — дата начала отсчета.
  • days — количество рабочих дней для прибавления (может быть отрицательным для движения в прошлое).
  • [holidays] — необязательный диапазон ячеек с датами праздников, которые тоже нужно исключить из расчета.

Примеры использования:

  1. Без учета праздников: Прибавить 10 рабочих дней к дате в A1: =WORKDAY(A1; 10)

  2. С учетом списка праздников: Если праздничные дни перечислены в диапазоне H2:H10: =WORKDAY(A1; 10; H2:H10)

Функция WORKDAY по умолчанию считает выходными только субботу и воскресенье. Если в вашей компании другая схема (например, скользящий график), стандартная формула не подойдет без дополнительных надстроек.

Динамические расчеты: связь с текущей датой

Часто требуется рассчитать срок исполнения задачи «сегодня плюс N дней». Для этого комбинируйте функции работы с датами.

  • Календарные дни от сегодня: =TODAY() + 30 (дата через месяц).
  • Рабочие дни от сегодня: =WORKDAY(TODAY(); 15; Holidays!A2:A20).

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

Продвинутый уровень: учет часов и минут

Иногда нужно добавить не только дни, но и конкретное время (часы, минуты). Поскольку в Excel сутки равны 1, один час — это 1/24, а одна минута — 1/(24*60).

Формула добавления рабочих дней и времени:

=WORKDAY(A1; 5; $H$2:$H$10) + TIME(4; 30; 0)

Эта формула прибавит 5 рабочих дней к дате в A1 (учитывая праздники из столбца H) и добавит 4 часа 30 минут к полученному результату.

Убедитесь, что формат ячейки с результатом установлен как «Дата» или «Дата_время», иначе вы увидите десятичное число вместо понятной даты.

Сравнение методов расчета дат

ЗадачаФормулаУчитывает выходные?
Добавить календарные дни=A1 + NНет (считает все дни)
Добавить рабочие дни=WORKDAY(A1; N)Да (пропускает Сб, Вс)
Добавить рабочие дни с праздниками=WORKDAY(A1; N; Праздники)Да (пропускает Сб, Вс и праздники)
Узнать кол-во рабочих дней между датами=NETWORKDAYS(A1; B1)Да (возвращает число дней)

Частые ошибки и их решение

  1. Результат отображается как число (например, 45395).

    • Причина: Ячейке присвоен «Общий» числовой формат.
    • Решение: Выделите ячейку, нажмите Ctrl+1 и выберите формат «Дата».
  2. Формула возвращает ошибку #ЗНАЧ! (#VALUE!).

    • Причина: Исходная дата записана как текст (например, "13 апреля" без года или в нестандартном формате), либо диапазон праздников содержит текст.
    • Решение: Проверьте исходные данные. Используйте функцию DATE(год; месяц; день) для гарантированного создания даты.
  3. Праздники не исключаются из расчета.

    • Причина: Ошибка в ссылке на диапазон праздников или праздники записаны текстом.
    • Решение: Убедитесь, что третий аргумент ссылается на диапазон с корректными датами. Лучше использовать абсолютные ссылки (например, $H$2:$H$10), чтобы при копировании формулы диапазон не «съехал».

FAQ

Можно ли вычитать рабочие дни? Да. Передайте отрицательное число во втором аргументе WORKDAY. Например, =WORKDAY(A1; -5) вернет дату 5 рабочих дней назад.

Как учесть разные выходные (не Сб и Вс)? Стандартная функция WORKDAY не позволяет менять набор выходных. Используйте функцию WORKDAY.INTL (или РАБДЕНЬ.МЕЖД), где можно задать код выходных дней (например, только воскресенье или пятница-суббота).

Что делать, если список праздников очень большой? Вынесите список праздников на отдельный лист и назовите диапазон (через «Диспетчер имен»), например, Holidays_RU. Тогда формула станет читаемее: =WORKDAY(A1; 10; Holidays_RU).