Функции и формулы

Как вычислить разность дат в Excel: вычитание, обе границы периода и формат ответа

Разность дат в Excel — это число дней между двумя датами для тех, кто считает сроки, длительность командировок и остаток до дедлайна. По справке Microsoft функция ДНИ вычитает начальную дату из конечной и принимает конечную первой[1]. Ниже — вычитание, ДНИ, недели и часы, ошибки формата и границы применения.

Тренажёр: 6 шагов

Сколько дней длился проект, сколько осталось до сдачи отчёта, сколько часов заняла смена — все эти вопросы сводятся к вычитанию одной даты из другой. Справка Microsoft о вычитании дат описывает формулу «конечная минус начальная», которую протягивают вниз: Excel сам меняет ссылки для каждой строки и возвращает количество дней[2]. Считать по календарю вручную долго, а ошибиться на один день легко.

Порядок работы такой: найти даты начала и конца, ввести формулу вычитания или ДНИ, проверить формат результата, исправить дату вместо числа или текстовую дату и протянуть формулу на свои данные. Все результаты ниже пересчитаны в движке тренажёра.

Ключевые факты: разность дат в Excel

  • Разность дат — это число дней между двумя датами, которое Excel получает вычитанием порядковых номеров.
  • Справка Microsoft приводит пример: с 01.01.2021 по 31.12.2021 функция ДНИ насчитывает 364 дня[1].
  • ДНИ возвращает #ЗНАЧ!, если текст нельзя прочитать как дату[1].
  • ДНИ отличается от вычитания тем, что конечная дата стоит первым аргументом, а текст переводится как ДАТАЗНАЧ.
  • По справке Microsoft часы между датами со временем показывает формат [h]:mm после вычитания ячеек[5].

Как посчитать разность дат в Excel вычитанием

Разность дат в Excel считается вычитанием начальной даты из конечной: дата хранится числом, и разница двух чисел — это дни. Пример считается на таком листе:

ABC
1НачалоКонецДней
201.03.202615.11.2026=B2-A2
  1. Введите даты в A2 и B2 — функцией ДАТА или обычным вводом.
  2. Введите в C2 =B2-A2 и нажмите Enter: результат — 259[3].
  3. Если в ячейке появилась дата вместо числа, поставьте ей общий или числовой формат.
  4. Протяните формулу вниз на весь список.

Разность дат в Excel не зависит от того, как даты выглядят на экране: важны только их порядковые номера. Вычитание не считает первый день: от 1 до 2 марта получится 1 день. Конечная дата входит в счёт только после прибавления единицы: =B2-A2+1 превращает 259 дней в 260. Так считают длительность командировки или отпуска, где важны обе границы периода. Если формулу протягивают на сотню строк, проверьте две-три из них по календарю: ошибка в одну дату обычно означает, что забыли единицу.

Разность дат в Excel работает и для дат, введённых прямо в формулу текстом. Справка Microsoft о вычислении возраста приводит пример =("02.10.2014"-"02.05.2014") с результатом 153 дня[4].

Справка о вычитании дат для Mac показывает тот же способ на версиях Microsoft 365, Excel 2024 и Excel 2021 для Mac[2]. В Google Таблицах вычитание дат работает так же.

Разобравшись с вычитанием, переходим к функции, которая делает то же самое, но строже проверяет аргументы.

Чем функция ДНИ отличается от простого вычитания

Функция ДНИ возвращает количество дней между датами и принимает конечную дату первой: ДНИ(кон_дата;нач_дата). Если оба аргумента — числа, функция вычитает начальную дату из конечной, а текст переводит в дату, как ДАТАЗНАЧ[1].

ПризнакВычитание =B2-A2Функция =ДНИ(B2;A2)
порядокконечная минус начальнаяконечная дата — первый аргумент
результат на нашем примере259259
даты в обратном порядке-259-259
текст, похожий на датуExcel пытается перевести сампереводит как ДАТАЗНАЧ
текст, который не датаошибка#ЗНАЧ!

Справка приводит два примера: с 1 февраля по 15 марта 2021 года — 42 дня, с 01.01.2021 по 31.12.2021 — 364[1]. Числовая дата вне допустимого диапазона даёт #ЧИСЛО!, а допустимые даты лежат между 1 января 1900 года и 31 декабря 9999 года[7].

Миф: ДНИ принимает начальную дату первой, как в записи слева направо — на деле синтаксис функции ДНИ(кон_дата;нач_дата), и первой идёт конечная дата, по справке Microsoft[1].

ДНИ удобна, когда даты приходят из выгрузки текстом: функция сама переводит их и возвращает целое число без времени. Справка относит ДНИ к Excel для Microsoft 365, Excel 2024, Excel 2021, Excel 2019 и Excel 2016[1].

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

Однако дни — не единственная единица разницы: сроки бывают в неделях, а смены — в часах.

Пример: недели, часы и дни до срока

Разность дат переводится в недели делением на 7, а в часы — умножением на 24 или форматом [ч]:мм. Справка Microsoft о разнице двух дат советует делить дни на 7 и форматировать результат как число с двумя знаками[5].

ЗадачаФормулаРезультат
дней между 01.03.2026 и 15.11.2026=B2-A2259
то же с обеими границами=B2-A2+1260
полных недель=ЦЕЛОЕ((B2-A2)/7)37
часов между 06.11.2026 9:00 и 07.11.2026 18:30=(D4-C4)*2433,5
то же в виде часов и минутформат [ч]:мм33:30
дней до 01.01.2027 на 06.11.2026=ДАТА(2027;1;1)-СЕГОДНЯ()56

Полные недели между датами даёт ЦЕЛОЕ от разности, делённой на 7[3]. Разницу двух моментов времени в часах показывает формат [ч]:мм или умножение разности на 24: без квадратных скобок формат часов сбросится после суток.

Дни до срока считают от функции СЕГОДНЯ: формула пересчитывается каждый день, и отрицательное число означает просрочку. Подробно о пересчёте текущей даты — на странице о функции СЕГОДНЯ и обновлении даты в ячейке.

Миф: разность дат со временем всегда целое число дней — на деле разность моментов времени дробная, и часы показывает формат [h]:mm, как указано в справке Microsoft[5].

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

Именно поэтому ошибки формата требуют отдельного разбора: формула верна, а в ячейке видно не то.

Ошибки разности дат: дата вместо числа, текст и минус

Разность дат чаще всего «ломается» не в формуле, а в формате ячейки или в типе исходных данных. Таблица собирает три частых сбоя на наших данных[3].

Что видноПричинаЧто сделать
дата вроде 15.09.1900 вместо числаячейке достался формат датыпоставить общий или числовой формат
#ЗНАЧ!текст не читается как датаввести дату заново или через ДАТА
отрицательное числодаты перепутаны местамипоменять аргументы или взять ABS
1,3958 вместо часовразность моментов времениумножить на 24 или задать [ч]:мм

Дата вместо числа — не ошибка вычисления, а вопрос отображения. Результат 259 просто показан в формате даты, и Excel выводит его как день в начале 1900 года. Справка Google о DATEDIF советует в таком случае сменить формат ячейки на числовой[6], и в Excel решение то же.

Текстовая дата из выгрузки выглядит как обычная, но ЕТЕКСТ для неё возвращает ИСТИНА. ДНИ переведёт такую дату сама, а для вычитания её лучше заранее превратить в число через ДАТАЗНАЧ. Если даты из выгрузки содержат лишние пробелы или точки в конце, даже ДНИ может не прочитать их и вернёт #ЗНАЧ! — тогда строки сначала чистят.

Миф: даты, записанные текстом, нельзя вычитать — на деле ДНИ преобразует текст как ДАТАЗНАЧ, а разница текстовых дат прямо в формуле в справке Microsoft даёт 153 дня[4].

Остаётся понять, когда простая разность дат даёт не тот ответ, который нужен.

Когда вычитание дат не подойдёт

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

  • Если нужны полные месяцы или годы — возраст, стаж, срок аренды, — разность в днях не поможет: нужна функция с единицами, о ней сказано выше во врезке «Не путать».
  • Если нужны только будние дни, вычитание посчитает и выходные — для графиков есть страница о количестве будних дней в периоде.
  • При датах раньше 1 января 1900 года вычитание не работает: такие значения выходят за пределы дат для вычислений[7].
  • Если в данных смешаны даты и текст, результат части строк окажется ошибкой — сначала проверьте тип ячеек.
  • Если срок задан в месяцах, а не в днях, разность дат его не посчитает: дату окончания получают сдвигом на месяцы, а не вычитанием.

Для отчётов с датами формат ответа задают заранее, чтобы разность дат в Excel сразу показывала число: числовой для дней, [ч]:мм для часов. Коды формата разобраны на странице о числовых форматах ячеек. Остальные группы формул собраны в каталоге формул Excel для работы с датами.

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

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

Количество дней между датами даёт вычитание =B2-A2 или функция =ДНИ(B2;A2). Для 01.03.2026 и 15.11.2026 обе вернут 259[3].

Как посчитать дни включительно?

Дни включительно считают прибавлением единицы: =B2-A2+1. Без неё разность дат в Excel не учитывает первый день, и 260 дней превратятся в 259[3].

Почему вместо числа дней появилась дата?

Вместо числа дней дата появляется, если у ячейки формат даты: 259 дней показываются как 15.09.1900[3]. Если не сменить формат, вся колонка будет выглядеть как даты начала 1900 года. Поставьте общий или числовой формат — появится число.

Как посчитать разницу между датами в часах?

Разницу в часах даёт разность моментов времени, умноженная на 24, или формат [h]:mm[5]. Для 06.11.2026 9:00 и 07.11.2026 18:30 получится 33,5 часа.

Чем ДНИ отличается от вычитания?

ДНИ отличается от вычитания порядком аргументов: первой идёт конечная дата. Текстовые даты функция переводит сама, как ДАТАЗНАЧ[1].

Можно ли посчитать разность дат в Google Таблицах?

Да, в Google Таблицах даты вычитают так же: конечная минус начальная. Если результат показан как дата, справка Google советует числовой формат[6].

Источники

  1. [1] Microsoft, справка «Функция ДНИ», 2026
  2. [2] Microsoft, справка «Вычитание дат в Excel для Mac», 2026
  3. [3] Редакция «Excel-тренажёра», проверка «разность дат 01.03.2026–15.11.2026, недели и часы» в движке тренажёра, 2026
  4. [4] Microsoft, справка «Вычисление возраста», 2026
  5. [5] Microsoft, справка «Calculate the difference between two dates», 2026
  6. [6] Google, справка «DATEDIF», 2026
  7. [7] Microsoft, «Технические характеристики и ограничения Microsoft Excel», 2026

Похожие темы

Разделить текстРазделить текст в Excel — значит разложить одну строку на части по столбцам для тех, кто разбирает ФИО, адрес…тренажёрСложные формулы и их проверкаПроверка формул в Excel — это набор команд для тех, кто хочет увидеть, как сложная формула получила результат…тренажёрРАНГ, МЕДИАНА и промежуточные итогиРанг в Excel — это номер места числа в списке для тех, кто строит рейтинг продаж, баллов или сроков. По справ…тренажёрСсылка на другой лист и книгуСсылка на другой лист — это адрес ячейки с именем листа и восклицательным знаком для тех, кто держит справочн…тренажёрРабочие дни: ЧИСТРАБДНИ и РАБДЕНЬКоличество рабочих дней в Excel — это число будних дней между двумя датами для тех, кто считает сроки договор…тренажёрСУММПРОИЗВСУММПРОИЗВ в Excel — это функция, которая перемножает элементы диапазонов построчно и возвращает сумму произв…тренажёр