Почему важно правильно считать просрочку в Excel
Расчет дней просрочки — одна из самых востребованных задач в Microsoft Excel и Google Таблицах. От бухгалтеров, которые отслеживают дебиторскую задолженность, до менеджеров проектов, контролирующих выполнение задач, — всем нужно точно знать, сколько времени прошло с контрольной даты. Ошибка в расчетах может привести к финансовым потерям, штрафам или срыву сроков.
В этой статье вы найдете 5 проверенных способов посчитать просрочку — от простейших формул до сложных конструкций с учетом рабочих дней, праздников и динамических дат. Мы разберем реальные кейсы: кредиты, договоры аренды, задачи в Trello или Jira, где точность имеет критическое значение. А еще вы узнаете, как автоматизировать процесс, чтобы не считать просрочку вручную каждый раз.
Нет времени читать всю статью? Воспользуйтесь быстрым решением:
Способ 1: Базовая формула для расчета просрочки
Начнем с самого простого варианта — расчета количества дней между сегодняшней датой и датой дедлайна. Эта формула подходит для большинства задач, где не нужно учитывать выходные или праздники.
Допустим, у вас в ячейке A2 указана дата, до которой нужно было выполнить задачу (например, 15.05.2026). Чтобы узнать, сколько дней уже просрочено, используйте:
=МАКС(0; СЕГОДНЯ()-A2)
Разберем, как это работает:
- 📅
СЕГОДНЯ()— функция, которая возвращает текущую дату (обновляется автоматически при каждом открытии файла). - 🔢
СЕГОДНЯ()-A2— вычитаем из сегодняшней даты дату дедлайна, получаем разницу в днях. Если задача еще не просрочена, результат будет отрицательным. - ⚖️
МАКС(0; ...)— обнуляет отрицательные значения. Если просрочки нет, формула вернет0.
Пример: если сегодня 20.05.2026, а дедлайн был 15.05.2026, формула вернет 5 (дни просрочки). Если дедлайн 25.05.2026 — результат будет 0.
Что делать, если формула возвращает ошибку #ИМЯ?
Это означает, что Excel не распознает функцию СЕГОДНЯ(). Проверьте:
1. Правильность написания (регистр не важен, но буквы должны быть кириллические).
2. Локализацию Excel — в английской версии функция называется TODAY().
3. Формат ячейки с датой (должен быть "Дата", а не "Текст").
Способ 2: Учет рабочих дней (без выходных)
Если просрочка считается только по рабочим дням (например, для банковских платежей или офисных задач), используйте функцию ЧИСТРАБДНИ(). Она автоматически исключает субботы и воскресенья.
Синтаксис:
=МАКС(0; ЧИСТРАБДНИ(A2; СЕГОДНЯ()))
Где:
- 📊
A2— ячейка с датой дедлайна. - 🔄
СЕГОДНЯ()— текущая дата. - 📅 Функция
ЧИСТРАБДНИ()считает только будни (понедельник-пятница).
Пример: дедлайн был в пятницу 10.05.2026, а сегодня вторник 21.05.2026. Обычная формула даст 11 дней просрочки, а ЧИСТРАБДНИ() — только 8 (исключая 11-12 мая и 18-19 мая).
⚠️ Внимание: ФункцияЧИСТРАБДНИ()не учитывает праздничные дни. Если они важны для вашего расчета, используйтеЧИСТРАБДНИ.МЕЖД()с указанием списка праздников.
Способ 3: Просрочка с учетом праздников
Для точного расчета просрочки по юридическим или финансовым документам часто нужно исключать не только выходные, но и официальные праздники. В этом поможет функция ЧИСТРАБДНИ.МЕЖД().
Шаги:
- Создайте на листе список праздничных дат (например, в диапазоне
D2:D10). - Используйте формулу:
=МАКС(0; ЧИСТРАБДНИ.МЕЖД(A2; СЕГОДНЯ(); D2:D10))
Пример списка праздников для России (2026 год):
| Дата | Праздник |
|---|---|
| 01.01.2026 | Новый год |
| 07.01.2026 | Рождество |
| 23.02.2026 | День защитника Отечества |
| 08.03.2026 | Международный женский день |
| 01.05.2026 | Праздник Весны и Труда |
Если дедлайн пришелся на праздничный день, он автоматически переносится на следующий рабочий день. Например, задача должна была быть выполнена 08.03.2026 (пятница), но этот день выходной. Формула начнет отсчет просрочки с 11.03.2026 (понедельник).
Способ 4: Динамическая просрочка с условным форматированием
Чтобы просроченные задачи сразу бросались в глаза, настройте условное форматирование. Это визуально выделит ячейки с просрочкой красным цветом.
Инструкция:
- Выделите диапазон с датами дедлайнов (например,
A2:A100). - Перейдите на вкладку
Главная → Условное форматирование → Создать правило. - Выберите
Использовать формулу для определения форматируемых ячеек. - Введите формулу:
=И(A2<СЕГОДНЯ(); A2<>"") - Задайте красный цвет заполнения и нажмите
ОК.
Теперь все просроченные даты будут подсвечены. Чтобы добавить количество дней просрочки рядом, используйте формулу из Способа 1 и также настройте для нее форматирование (например, красный текст при значении > 0).
Выделить диапазон с датами|Создать правило с формулой =A2<СЕГОДНЯ()|Задать красный цвет для просроченных ячеек|Добавить столбец с количеством дней просрочки|-->
Способ 5: Автоматический расчет просрочки для списка задач
Если у вас таблица с задачами, где нужно отслеживать просрочку для каждой строки, используйте таблицу Excel (или SmartTable в Google Таблицах) с вычисляемым столбцом.
Пример структуры таблицы:
| Задача | Дедлайн | Дней просрочки | Статус |
|---|---|---|---|
| Отчет по продажам | 15.05.2026 | =МАКС(0; СЕГОДНЯ()-B2) | =ЕСЛИ(C2=0; "В срок"; "Просрочено") |
| Оплата поставщику | 10.05.2026 | =МАКС(0; СЕГОДНЯ()-B3) | =ЕСЛИ(C3=0; "В срок"; "Просрочено") |
| Подписать договор | 25.05.2026 | =МАКС(0; СЕГОДНЯ()-B4) | =ЕСЛИ(C4=0; "В срок"; "Просрочено") |
Преимущества этого подхода:
- 📋 Автоматический пересчет при открытии файла.
- 🔍 Легко фильтровать задачи по статусу (например, показать только просроченные).
- 📊 Можно добавить сводную таблицу для анализа просрочек по проектам или исполнителям.
Если вам нужно отслеживать просрочку не только по дате, но и по времени (например, для задач с дедлайном "до 18:00"), используйте комбинацию даты и времени в формате 15.05.2026 18:00 и модифицируйте формулу: =МАКС(0; (СЕГОДНЯ()+СЕЙЧАС()-A2)*24) — это вернет количество просроченных часов.
Типичные ошибки и как их избежать
Даже в простых формулах легко допустить ошибку. Вот самые распространенные проблемы и их решения:
⚠️ Внимание: Если формула возвращает######вместо числа, проверьте формат ячейки. Скорее всего, столбец слишком узкий для отображения даты или большого числа. Растяните его или измените формат наОбщий.
Чек-лист для проверки:
- 🗓️ Убедитесь, что ячейки с датами имеют формат
Дата, а неТекст. Если Excel воспринимает15.05.2026как текст, формулы не будут работать. - 🔢 Проверьте, что в настройках Excel используется нужная локаль (например, для России — формат даты
ДД.ММ.ГГГГ). - 🔄 Если используете
ЧИСТРАБДНИ.МЕЖД(), убедитесь, что диапазон с праздниками не содержит пустых ячеек или некорректных дат.
Еще одна частая ошибка — использование абсолютных ссылок там, где нужны относительные. Например, если вы копируете формулу =СЕГОДНЯ()-$A$2 вниз по столбцу, ссылка на A2 не изменится, и все строки будут ссылаться на одну и ту же ячейку. Исправьте на =СЕГОДНЯ()-A2 (без знаков $).
FAQ: Ответы на частые вопросы
Можно ли посчитать просрочку в Google Таблицах?
Да, все формулы из этой статьи работают и в Google Таблицах. Единственное отличие — функции на английском: TODAY() вместо СЕГОДНЯ(), NETWORKDAYS() вместо ЧИСТРАБДНИ().
Как посчитать просрочку, если дедлайн указан в текстовом формате (например, "15 мая")?
Используйте функцию ДАТАЗНАЧ(), чтобы преобразовать текст в дату:
=МАКС(0; СЕГОДНЯ()-ДАТАЗНАЧ("15 мая 2026"))
Если текст в ячейке (например, A2 содержит "15 мая"), формула будет:
=МАКС(0; СЕГОДНЯ()-ДАТАЗНАЧ("1 "&A2&" "&ГОД(СЕГОДНЯ())))
Как сделать так, чтобы просрочка считалась не с сегодняшнего дня, а с фиксированной даты?
Замените СЕГОДНЯ() на ячейку с фиксированной датой. Например, если в B1 указана дата контроля (20.05.2026), формула будет:
=МАКС(0; $B$1-A2)
Знаки $ фиксируют ссылку на B1, чтобы при копировании формулы вниз она не сдвигалась.
Можно ли посчитать просрочку в днях и часах?
Да. Если в ячейке указано точное время (например, 15.05.2026 14:30), используйте:
=ЕСЛИ(СЕГОДНЯ()+СЕЙЧАС()-A2>0; ТЕКСТ(СЕГОДНЯ()+СЕЙЧАС()-A2; "дд чч:мм"); "0")
Эта формула вернет строку вида 5 14:30 (5 дней и 14 часов 30 минут просрочки).
Как автоматически отправлять уведомления о просрочке?
Excel не умеет отправлять email самостоятельно, но вы можете:
- Использовать Power Automate (ранее Microsoft Flow) для интеграции с Outlook.
- Настроить макрос на VBA, который будет проверять просрочки и отправлять письма через Outlook.
- Экспортировать данные в Google Таблицы и использовать Apps Script для рассылки уведомлений.