Как в Excel посчитать количество дней между датами?

Как в Excel посчитать количество дней между датами? - коротко

Используйте функцию DATEDIF: =DATEDIF(A1;B1;"d") — она возвращает количество полных дней между датой в A1 и датой в B1. Также можно просто вычесть одну дату из другой и отформатировать ячейку как число: =B1‑A1.

Как в Excel посчитать количество дней между датами? - развернуто

Для вычисления количества дней между двумя датами в Excel существует несколько простых способов, каждый из которых подходит под разные задачи.

Самый базовый метод – вычесть более раннюю дату из более поздней. В ячейке, где требуется получить результат, вводится формула вида =A2-B2, где A2 содержит конечную дату, а B2 – начальную. Excel автоматически преобразует разницу в число, представляющее количество полных дней. Если результат отображается в виде даты, достаточно изменить формат ячейки на «Общее» или «Число».

Когда требуется исключить из расчёта weekends (субботу и воскресенье) или праздничные дни, удобно воспользоваться функцией NETWORKDAYS. Синтаксис: =NETWORKDAYS(start_date; end_date; [holidays]). Параметр holidays – это диапазон ячеек, где перечислены даты официальных праздников. Функция возвращает количество рабочих дней, включающее начальную и конечную даты, если они выпадают на будний день.

Для подсчёта только календарных дней, но с учётом части суток, можно использовать функцию DATEDIF. Формула =DATEDIF(start_date; end_date; "d") выдаёт полное количество дней между датами, игнорируя часы и минуты. Если требуется добавить к результату дробную часть, представляющую часть дня, следует использовать обычное вычитание и делить полученное значение на 24, если в исходных датах указано время.

Иногда необходимо получить разницу в виде лет, месяцев и дней. Здесь тоже пригодится DATEDIF, только с разными параметрами:

  • "y" – количество полных лет,
  • "m" – количество полных месяцев,
  • "d" – количество дней,
  • "ym" – остаток месяцев после вычета полных лет,
  • "md" – остаток дней после вычета полных месяцев.

Пример комбинированного расчёта: =DATEDIF(A2;B2;"y") & " лет " & DATEDIF(A2;B2;"ym") & " месяцев " & DATEDIF(A2;B2;"md") & " дней".

Если дата хранится в виде текста, её необходимо сначала преобразовать в дату функцией DATEVALUE. Формула =DATEVALUE("01.03.2023") вернёт числовое представление этой даты, после чего можно применять любые из перечисленных методов.

Для автоматизации расчётов в больших таблицах удобно создать вспомогательный столбец, где будет вычисляться разница, а затем использовать сводные таблицы или функции агрегирования (SUM, AVERAGE) для получения итоговых показателей.

Не забывайте проверять, что ячейки действительно содержат даты, а не текстовые строки. При ошибках Excel выводит #VALUE!. В таких случаях помогает функция ISNUMBER в сочетании с DATEVALUE для предварительной валидации данных.

Таким образом, используя простое вычитание, NETWORKDAYS, DATEDIF и вспомогательные функции, можно быстро и точно получить нужный интервал между датами в любой задаче.