OnlineTimeNow

Как посчитать дни между двумя датами

Как посчитать дни между двумя датами

Чтобы посчитать дни между двумя датами, вычтите более раннюю дату из более поздней. Результат включает все дни после начальной даты, в том числе конечную дату: с 14 июля по 25 декабря 2026 года проходит 164 дня. Если нужно учесть и первый, и последний день, прибавьте 1.

Короткий ответ

Калькуляторы дат, электронные таблицы и языки программирования по умолчанию делают одно и то же: рассматривают даты как точки и измеряют расстояние между ними. С 14 по 15 июля проходит 1 день, а с 14 по 14 июля, 0 дней. Это подсчёт без начального дня, подходящий для большинства вопросов о том, сколько времени осталось до события или прошло после него.

Калькулятор дат на этом сайте показывает это число, а также тот же промежуток в неделях и днях, годах, месяцах и днях и в рабочих днях. Если нужно включить оба дня, отметьте пункт «Включить конечную дату». Выбор способа зависит от того, что именно вы считаете.

Включать обе даты или нет?

Это задача о столбах и промежутках. В заборе длиной 40 метров со столбами через каждые 10 метров четыре промежутка, но пять столбов. С датами так же: с понедельника по пятницу четыре перехода, но пять дней. Подумайте, что вы считаете: промежутки (ночи, прошедшее время) или столбы (дни, когда что-то происходит).

Какой способ подсчёта выбрать
Что вы считаетеСпособ подсчётаПример
Ночи в гостинице, аренда с оплатой за ночьБез начального дня (конечная дата минус начальная)Заезд 10 июля, выезд 14 июля: 4 ночи
Дни мероприятия, курса или фестиваляОбе даты включительно (конечная дата минус начальная плюс 1)С 14 по 18 июля: 5 дней
Дни до даты (сколько дней осталось)Без начального дня, сегодня не считаетсяС 14 июля по 25 декабря: 164 дня
Сроки в федеральных судах США (в течение 30 дней после события)День события не считается, последний день включёнДокументы вручены 14 июля: 30-й день приходится на 13 августа
Сроки пребывания по визе, отпуска, договорыКак указано в документеПрочитайте правило, не полагайтесь на догадки

Судебное правило показывает, как можно точно сформулировать порядок подсчёта. Правило 6(a) Федеральных правил гражданского судопроизводства США предписывает исключать день события, с которого начинается срок, считать все дни, включая выходные и праздники, и включать последний день. Если последний день приходится на субботу, воскресенье или установленный законом праздник, срок продлевается до следующего рабочего дня. Многие договоры используют такую же формулировку. Если в договоре порядок не указан, уточните его: выражение «30 дней с 14 июля» можно понять и как срок до 13 августа, и как срок до 12 августа.

Для виз действуют правила органа, выдавшего визу. Например, Европейский союз публикует официальный калькулятор краткосрочного пребывания для правила 90 дней в любом 180-дневном периоде. Пользоваться им надёжнее, чем считать вручную.

Подсчёт вручную

Для двух дат в одном месяце вычтите число месяца начальной даты из числа конечной: с 3 по 29 июля проходит 26 дней. Если даты приходятся на разные месяцы, разделите промежуток на три части: остаток первого месяца, полные месяцы между датами и прошедшие дни последнего месяца.

  1. Найдите число оставшихся дней в начальном месяце: вычтите число начальной даты из количества дней в месяце.
  2. Прибавьте количество дней каждого полного месяца между датами.
  3. Прибавьте число месяца конечной даты.

Пример: с 15 марта по 2 октября 2026 года. В марте 31 день, поэтому 31 минус 15 равно 16. С апреля по сентябрь получаем 30 + 31 + 30 + 31 + 31 + 30 = 183. Октябрь добавляет 2 дня. Всего 16 + 183 + 2 = 201 день.

Вам понадобится число дней в каждом месяце: январь 31, февраль 28 (29 в високосном году), март 31, апрель 30, май 31, июнь 30, июль 31, август 31, сентябрь 30, октябрь 31, ноябрь 30 и декабрь 31. Можно воспользоваться правилом костяшек: сожмите обе руки в кулаки. Каждая костяшка обозначает месяц из 31 дня, а каждая впадина между ними, более короткий месяц.

Ещё одна возможная ошибка связана с високосными годами. В григорианском календаре год високосный, если делится на 4. Исключение составляют годы, оканчивающиеся на два нуля: они должны делиться на 400. Поэтому 2000 год был високосным, а 2100 год не будет. С 28 февраля по 1 марта в 2028 году проходит 2 дня, а в 2027 году 1 день. Подробнее об этом в статье о правилах високосного года.

Недели, месяцы и годы между датами

С неделями всё просто: в каждой семь дней. Разделите число дней на 7 и сохраните остаток. В 164 днях с 14 июля по 25 декабря содержится 23 недели и 3 дня. Если вам нужны календарные недели, а не промежутки по семь дней, для их обозначения используют номера недель ISO.

С месяцами результаты могут различаться, поскольку месяцы имеют разную длину. Большинство инструментов считают месяц полным, только когда снова наступает то же число месяца. С 15 марта по 2 октября проходит 6 месяцев и 17 дней: с 15 марта по 15 сентября проходят 6 месяцев, а с 15 сентября по 2 октября ещё 17 дней.

Особая ситуация возникает в конце месяца. Какая дата наступит через месяц после 31 января? Даты 31 февраля нет, поэтому одни системы указывают 28 февраля, другие 3 марта. Функция DATEDIF в электронных таблицах считает месяц полным, только когда число конечной даты достигает числа начальной. Поэтому между 30 сентября 2015 года и 28 февраля 2016 года она показывает 4 месяца, хотя 28 февраля было последним днём месяца. Если месяцы имеют значение, например при аренде, подписке или расчёте возраста, укажите использованное правило. В руководстве по расчёту возраста рассмотрена такая же проблема для дня рождения 29 февраля.

Формулы в электронных таблицах

Программы электронных таблиц хранят даты как порядковые числа, по одному на каждый день, поэтому достаточно обычного вычитания. Если начальная дата находится в A1, а конечная в B1:

ФормулаРезультатПримечание
=B1-A1Дни без начального дняВыберите числовой формат ячейки, иначе получите дату
=B1-A1+1Дни с включением обеих датПодсчёт включительно
=DAYS(B1,A1)То же, что B1-A1Сначала указывается конечная дата
=DATEDIF(A1,B1,"D")То же, что B1-A1Сначала начальная дата; ошибка, если она позже конечной
=DATEDIF(A1,B1,"M")Полные месяцыМесяц считается полным при достижении того же числа
=DATEDIF(A1,B1,"Y")Полные годыОбычная формула для расчёта возраста

Учтите два момента. В документации DATEDIF описана как функция, сохранённая для совместимости со старыми книгами электронных таблиц, а единицу «MD» не рекомендуют использовать из-за известных ограничений. Кроме того, DAYS принимает аргументы в порядке, обратном DATEDIF. Это самая частая причина отрицательного результата. Для подсчёта только рабочих дней в таблицах есть функция NETWORKDAYS. В статье о подсчёте рабочих дней рассказано о ней и о праздничных днях.

Особые случаи

Дни перевода часов

Календарные сутки не всегда длятся 24 часа. В Нью-Йорке 8 марта 2026 года длилось 23 часа, а 1 ноября 2026 года продлится 25 часов. Программа, которая вычитает две временные отметки и делит результат на 86 400 секунд, может потерять день. С полуночи 1 марта до полуночи 10 марта 2026 года в Нью-Йорке проходит 9 календарных дней, но только 215 часов, или 8,96 «дня». Программа, округляющая результат вниз, покажет 8. Считайте разницу между датами, а не часы, делённые на 24. В статье о переходе на летнее время объясняется, какие дни в вашем регионе короче или длиннее обычного.

Часовые пояса и линия перемены дат

Дата зависит от местного времени. Когда в Лос-Анджелесе 14 июля в 23:00, в Сиднее уже день 15 июля. Если срок касается людей в разных местах, договоритесь, по чьему календарю его считать, и укажите часовой пояс вместе с датой. Если срок истекает в конкретный момент, обратный отсчёт до этого времени понятнее, чем число дней.

Очень старые даты

Страны переходили с юлианского на григорианский календарь в разные годы, начиная с 1582 года, и при переходе пропускали 10 или более дней. Калькуляторы, включая наш, используют григорианский календарь для всего периода. Поэтому подсчёт дней через дату исторического перехода в интересующей вас стране нужно корректировать вручную.

Используйте калькулятор

Для разового расчёта калькулятор дат покажет число дней без начальной даты, число дней с включением обеих дат после установки одной отметки, а также количество недель, месяцев, лет и рабочих дней между ними. Чтобы найти дату через заданное число дней, прочитайте статью о том, какая дата наступит через 30, 60 или 90 дней. Чтобы следить за оставшимся временем, узнайте, как вести обратный отсчёт до любой даты, или настройте обратный отсчёт. Для календарных недель инструмент определения номера недели показывает неделю ISO для любой даты.

Прежде чем пользоваться результатом, решите, нужно ли включать обе даты. Затем введите их в калькулятор дат и посмотрите нужное число.

Частые вопросы

Нужно ли считать первый день при подсчёте дней между датами?

Обычно нет: при стандартном подсчёте из конечной даты вычитают начальную, не учитывая первый день и включая последний. Прибавьте 1, если нужно учесть оба дня, как при подсчёте дней мероприятия.

Сколько дней между двумя датами одного месяца?

Вычтите число более ранней даты из числа более поздней. С 3 по 29 июля проходит 26 дней или 27 дней, если включить оба.

Какая формула в электронной таблице считает дни между датами?

Вычтите одну ячейку из другой, =B1-A1, и задайте для результата числовой формат. Формулы =DAYS(B1,A1) и =DATEDIF(A1,B1,"D") дают тот же результат.

Сколько дней в году?

В обычном году 365 дней, в високосном 366. Дополнительный день приходится на 29 февраля. За 400-летний цикл григорианского календаря средняя продолжительность года составляет 365,2425 дня.

Обновлено:

Все даты, разницы во времени и расчёты на странице сверены с источниками ниже.

  1. Справка: функция DATEDIF
  2. Справка по электронным таблицам: DATEDIF
  3. Военно-морская обсерватория США: введение в календари
  4. Федеральные правила гражданского судопроизводства США, правило 6 (Институт правовой информации Корнеллского университета)