Как посчитать количество дней между двумя датами в Excel
Быстрые ссылки
Найти количество дней между датами с помощью вычитания
Посчитать дни между датами с помощью функции DAYS

Excel упрощает подсчёт полного числа дней между двумя конкретными датами. Вы можете использовать арифметический оператор или встроенную функцию. Ниже — пошаговые инструкции, советы по форматированию, возможные ошибки и альтернативные подходы.
Найти количество дней между датами с помощью вычитания
Чтобы узнать, сколько дней между двумя датами методом с минусом, откройте вашу таблицу Excel.
В примере у нас есть таблица с начальной и конечной датой:

Важно: убедитесь, что содержимое ячеек действительно имеет формат даты, а не текст. Формат даты влияет на расчёты и отображение.
- Выберите ячейку, где хотите получить результат — там отобразится число дней между указанными датами.

- В выбранной ячейке введите формулу и нажмите Enter. Замените C2 на ячейку с конечной датой, а B2 — на ячейку с начальной датой:
=C2-B2
Результат появится мгновенно в ячейке, где вы ввели формулу.

Совет: если в ячейке появляется дата вместо числа — измените формат ячейки на «Общий» или «Числовой».
Посчитать дни между двумя датами с помощью функции DAYS
Функция DAYS специально предназначена для подсчёта числа дней между двумя датами. Она выполняет ту же операцию, что и вычитание, но явно отражает смысл формулы.
Откройте книгу и выберите ячейку для результата.
Введите функцию, где C2 — конечная дата, B2 — начальная:
=DAYS(C2,B2)
Можно указывать даты прямо в функции, но в таком случае оборачивайте их в двойные кавычки согласно локали вашего Excel:
=DAYS("27/7/2021","25/3/2021")
Важно: формат строковых дат зависит от локали Excel. В некоторых локалях безопаснее использовать функцию DATE, например:
=DAYS(DATE(2021,7,27),DATE(2021,3,25))Или применить ISO-подобные числа, если ваша версия Excel корректно их распознаёт.

Когда эти методы работают, а когда нет
- Если даты хранятся как текст, оба метода вернут ошибку или неверный результат. Преобразуйте текст в дату через “Текст по столбцам” или DATEVALUE.
- Если в ячейках есть временная составляющая (часы/минуты), вычитание вернёт доли дня. Для целых дней используйте INT или округление.
- Если конечная дата раньше начальной — результат будет отрицательным. Для абсолютного значения используйте ABS.
- Для рабочих дней применяйте NETWORKDAYS или NETWORKDAYS.INTL, а не простое вычитание.
- Для расчёта возраста лучше использовать DATEDIF (скрытая функция) или комбинацию YEAR/MONTH/ DAY.
Альтернативные подходы и когда их применять
- DATEDIF(start,end,”d”) — удобно для совместимости с файлами из Google Sheets и для расчёта лет/месяцев/дней.
- NETWORKDAYS(start,end) — считает только рабочие дни (учитывает стандартные выходные и опционально праздники).
- NETWORKDAYS.INTL — настраиваемые выходные (например, для стран с другими выходными).
- Использовать DATE для безопасного ввода дат в формулах: DATE(год,месяц,день).
- Для разницы с точностью до секунд используйте разницу временных меток и умножение на 246060.
Мини-методология для проверки формул
- Проверка форматов: выделите ячейки и примените формат «Дата», затем «Общий» для проверки внутреннего числового значения.
- Тест на текст: используйте ISNUMBER(ячейка). Если FALSE — дата записана как текст.
- Подставьте известный пример (например, 01.01.2021 и 04.01.2021) и убедитесь в результате 3.
- Если результат не совпадает — проверьте локаль Excel и формат ввода дат.
Контроль качества: тестовые сценарии
- Тест 1: start=25/03/2021, end=27/07/2021 → ожидаемый результат 124 дней (проверить на локали).
- Тест 2: start и end в одном дне → ожидаемый 0.
- Тест 3: start позже end → ожидаем отрицательное число; если нужен абсолютный, применить ABS.
- Тест 4: даты как текст (“25.03.2021”) → ожидается FALSE для ISNUMBER; преобразовать с DATEVALUE.
- Тест 5: даты с временем (25.03.2021 12:00 и 26.03.2021 06:00) → результат ≠ целое; применить INT, если нужны целые дни.
Роли и контрольный список
Для начинающего пользователя:
- Убедиться, что даты введены корректно.
- Применить формулу =C2-B2 и поменять формат ячейки на “Общий”.
Для аналитика:
- Проверить отрицательные значения и при необходимости использовать ABS.
- Если нужны рабочие дни — использовать NETWORKDAYS.
Для разработчика/автоматизатора:
- Использовать DATE в формулах для избежания проблем с локалью.
- Добавить тесты в шаблон файла для контроля ввода.
Критерии приёмки
- Формула возвращает целое число дней для заданных дат.
- Ячейки-источники имеют формат даты или корректно преобразованы.
- Для бизнес-правил учтены рабочие дни и праздники (если необходимо).
Краткий глоссарий
- DATE — функция создания даты из года/месяца/дня.
- DAYS — функция, возвращающая разницу дат в днях.
- DATEDIF — устаревшая, но полезная функция для лет/месяцев/дней.
- NETWORKDAYS — считает рабочие дни, опционально с праздниками.
Важно: методы просты, но чувствительны к формату данных и локали. Всегда проверяйте исходные ячейки перед массовыми вычислениями.
Резюме
- Вычитание (C2-B2) и функция DAYS дают одинаковый результат для корректно форматированных дат.
- Для рабочих дней используйте NETWORKDAYS/NETWORKDAYS.INTL; для формирования безопасных дат — функцию DATE.
- Проверяйте формат ячеек и локаль Excel, чтобы избежать ошибок.
Короткое напоминание: при сомнениях используйте DATE или тестовые пары дат, чтобы удостовериться в корректности расчётов.