Гид по технологиям

Как вычитать даты в Excel

• 6 min read • Excel • Обновлено 09 Dec 2025
Как вычитать даты в Excel быстро
Как вычитать даты в Excel быстро

вычитание дат в Excel — иллюстрация

Вручную считать количество дней между датами удобно только для единичных случаев. При большом объёме данных это потребует много времени и увеличит риск ошибок. К счастью, Excel предоставляет набор формул и приёмов, которые помогают быстро и надежно вычитать даты и получать нужные интервалы.

Краткий обзор подходов

  • Для вычитания дней чаще всего достаточно простой арифметики с датами: A2 - B2 или A2 + (-N).
  • Для вычитания месяцев удобно использовать функцию EDATE, которая корректно обрабатывает разные длины месяцев.
  • Для вычитания лет применяют комбинацию DATE и YEAR/MONTH/DAY, чтобы сохранить день и месяц.
  • Для одновременной коррекции лет, месяцев и дней используют составную формулу на основе DATE(YEAR(…)+…, MONTH(…)+…, DAY(…)+…).

Важно: перед применением формул убедитесь, что формат ячеек соответствует Дата или Число. На Mac нажмите ⌘+1, на Windows — CTRL+1.

1. Вычитание месяцев с помощью EDATE

Функция EDATE для вычитания месяцев

EDATE — простая и надёжная функция для сдвига даты на заданное число месяцев. Она корректно учитывает разные длины месяцев и високосные годы.

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

  1. Введите начальную дату в ячейку A2 (например, 2025-03-15).
  2. Введите число месяцев для вычитания в ячейку B2 как отрицательное значение (например, -6 чтобы отнять 6 месяцев).
  3. В ячейку C2 вставьте формулу:
=EDATE(A2,B2)
  1. Скопируйте формулу вниз по столбцу для остальных строк.

EDATE полезна, когда нужен сдвиг именно на целое число месяцев. Если вам нужно получить количество месяцев между датами (интервал), используйте функцию DATEDIF с единицей “m”.

2. Вычитание дней (простая арифметика)

Вычитание дней в Excel на примере

Самый простой случай — вычитание или добавление дней. Excel хранит даты как числа, поэтому арифметика над ними работает напрямую.

Пример:

  1. Введите начальную дату в A2.
  2. Введите отрицательное число дней в B2 (например, -10 чтобы отнять 10 дней).
  3. В C2 используйте формулу:
=A2+B2

Эта формула сработает быстро для единичных и массовых корректировок.

Кейсы, когда это удобно:

  • Подвинуть дедлайн назад на N дней.
  • Получить дату напоминания за несколько дней до события.

Если требуется визуально отмечать изменённые строки, добавьте столбец со статусом и маркером (например, значок галочки).

3. Вычитание лет с сохранением дня и месяца

Вычитание лет с помощью DATE и YEAR

Чтобы отнять годы, сохранив день и месяц исходной даты, комбинируйте функции DATE, YEAR, MONTH и DAY.

Формула:

=DATE(YEAR(A2)+B2,MONTH(A2),DAY(A2))

Где B2 — отрицательное число лет (например, -3 чтобы отнять 3 года).

Пошагово:

  1. В A2 — исходная дата.
  2. В B2 — количество лет для вычитания (отрицательное число).
  3. В C2 — вставьте формулу выше и скопируйте вниз.

Замечание: если исходная дата — 29 февраля, то при переносе на невисокосный год Excel преобразует дату на 1 марта или на 28 февраля в зависимости от версии и настроек. Проверяйте такие граничные случаи.

4. Одновременное вычитание лет, месяцев и дней

Вычитание лет, месяцев и дней одновременно

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

=DATE(YEAR(A2)+B2,MONTH(A2)+C2,DAY(A2)+D2)

Где в B2, C2 и D2 находятся корректировки для лет, месяцев и дней (можно отрицательные значения).

Позиционные шаги:

  1. A2 — исходная дата.
  2. B2 — корректировка по годам (например, -1).
  3. C2 — корректировка по месяцам (например, -3).
  4. D2 — корректировка по дням (например, -7).
  5. E2 — формула выше; скопируйте для остальных строк.

Эта формула автоматически нормализует составляющие: если месяцы выходят за пределы 1–12, Excel подстроит год; если дни перекрывают границы месяца, Excel также корректирует дату.

Когда эти формулы не подходят: типичные ограничения и ошибки

  • Формула A2+B2 работает только если B2 — число дней. Для месяцев/лет она некорректна.
  • EDATE корректно перемещает по месяцам, но не подойдёт, если нужно считать разницу в месяцах между двумя датами (в этом случае — DATEDIF).
  • DATE(YEAR(…)+…) может дать неожиданный результат для 29 февраля при переносе на невисокосный год.
  • Если даты представлены текстом, сначала преобразуйте их в формат Дата с помощью DATEVALUE или TEXT->Дата (Функция ДАТАЗНАЧЕН).

Альтернативные подходы и дополнительные приёмы

  • DATEDIF(A2,B2,”d”) — возвращает количество дней между датами; “m” — число полных месяцев; “y” — полных лет.
  • NETWORKDAYS(start,end,holidays) — считает рабочие дни, исключая выходные и необязательные праздничные даты.
  • WORKDAY(start,days,holidays) — добавляет/вычитает рабочие дни и возвращает дату финиша.

Практическая методика: как подготовить таблицу для массовых операций

  1. Создайте столбцы: Исходная дата (A), Годы (B), Месяцы (C), Дни (D), Результат (E).
  2. Задайте формат столбца A и E как Дата (CTRL+1 / ⌘+1).
  3. В колонках B–D используйте числа (минус для вычитания).
  4. В E2 вставьте формулу =DATE(YEAR(A2)+B2,MONTH(A2)+C2,DAY(A2)+D2) и протяните вниз.
  5. Проверьте выборочные строки вручную и сохраните копию файла перед массовыми изменениями.

Критерии приёмки

  • Формула корректно вычисляет ожидаемые значения для 10 тестовых случаев, включая переход через год и високосный год.
  • Формат результата — Дата, отображаемая в нужном локальном виде (дд.мм.гггг или другой по настройке).
  • Для рабочих дней — учтены праздники, если использована NETWORKDAYS или WORKDAY.

Роль-based checklist — кому что проверить

  • Аналитик: проверить корректность формул на 10 крайних кейсах.
  • Бухгалтер: убедиться, что формат даты соответствует учётной политике.
  • Менеджер проекта: подтвердить сроки после массовых корректировок.
  • Разработчик макросов: при необходимости автоматизировать применение формул.

Проверочные сценарии (test cases)

  • Ввод: A2=2020-02-29, B2=-1 (годы) → Ожидаем: 2019-02-28 или 2019-03-01 (проверьте поведение и согласуйте с требованиями).
  • Ввод: A2=2021-03-31, C2=-1 (месяцы через EDATE) → Ожидаем: 2021-02-28 или корректный вариант в зависимости от логики смещения.
  • Ввод: A2=2025-01-10, D2=-15 (дни) → Ожидаем: 2024-12-26.

Быстрый справочник (cheat sheet)

  • Вычитать дни: =A2 + (-N) или =A2 - N
  • Вычитать месяцы: =EDATE(A2, -N)
  • Вычитать годы: =DATE(YEAR(A2)-N, MONTH(A2), DAY(A2))
  • Одновременно: =DATE(YEAR(A2)+B2, MONTH(A2)+C2, DAY(A2)+D2)
  • Разница (дни/месяцы/годы): =DATEDIF(A2, B2, “d”/“m”/“y”)
  • Рабочие дни: =NETWORKDAYS(start, end, holidays)

Decision flowchart — какую формулу выбрать

flowchart TD
  A[Нужно сдвинуть дату?] -->|Да: на дни| B[Используйте =A+/-N]
  A -->|Да: на месяцы| C[Используйте =EDATE'A, N']
  A -->|Да: на годы| D[Используйте =DATE'YEAR'A'+N,MONTH'A',DAY'A'']
  A -->|Да: комбинированно| E[Используйте =DATE'YEAR'A'+B,MONTH'A'+C,DAY'A'+D']
  A -->|Нужно узнать разницу| F[Используйте =DATEDIF'A,B,'d'/'m'/'y'']

Советы по локализации и форматам

  • Формат отображения дат в Excel зависит от региональных настроек системы и настроек книги. После вычислений проверьте представление дат.
  • При экспорте в CSV используйте формат ISO (гггг‑мм‑дд), чтобы сохранить однозначность.

Итог

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

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро