Excel и Google Workspace / Базовые формулы Excel

DATEDIF / РАЗНДАТ: разница между датами в годах, месяцах и днях

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

Опубликовано: Обновлено:

Формула

$$=DATEDIF(A2,B2,"m")$$

Обозначения

$A2$
начальная дата периода, дата
$B2$
конечная дата периода, дата
$"m"$
код единицы расчета: полные месяцы между датами, текст
$DATEDIF$
английское имя функции; в русской локализации Excel может использоваться РАЗНДАТ

Условия применения

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

Ограничения

  • DATEDIF возвращает полные интервалы и не округляет неполный месяц вверх.
  • Коды md, yd и ym могут давать неочевидные результаты на концах месяцев.
  • Если дата сохранена текстом, расчет может вернуть ошибку.

Подробное объяснение

DATEDIF сравнивает две даты и возвращает целое количество выбранных календарных единиц между ними. Обычное B2-A2 дает разницу в днях, а DATEDIF умеет считать полные годы, месяцы или остатки.

Третий аргумент управляет смыслом результата. Код y считает полные годы, m - полные месяцы, d - дни. Коды ym, md и yd считают остатки после исключения более крупных единиц.

Функция чувствительна к типу данных. Excel хранит дату как серийное число, поэтому визуальная строка 01.02.2026 не гарантирует, что ячейка действительно является датой после импорта.

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

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

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

Как пользоваться формулой

  1. Проверьте, что обе ячейки содержат настоящие даты.
  2. Введите DATEDIF или локализованное имя и укажите начальную дату первой.
  3. Укажите конечную дату вторым аргументом.
  4. Выберите код единицы в кавычках: y, m, d, ym, md или yd.
  5. Проверьте результат на граничной дате.

Историческая справка

DATEDIF восходит к совместимости табличных процессоров и старым кадрово-финансовым расчетам, где требовались полные календарные интервалы. Функция сохранилась, потому что возраст, стаж и сроки договоров постоянно встречаются в офисных файлах. Электронные таблицы сделали такие операции массовыми: пользователь задает правило один раз, а файл пересчитывает результат при изменении исходных данных. В современных версиях Excel и Google Таблиц важны не только имя функции, но и локаль, разделители аргументов, тип данных в ячейках и совместимость динамических массивов. Поэтому хорошая формула должна быть проверяемой: рядом должны быть исходные данные, понятная единица результата и тест на крайний случай. Такой подход превращает отдельную функцию в надежный прием офисной модели. По мере развития Excel эти функции стали частью обычной грамотности работы с таблицами: они уменьшают ручные операции, делают файл воспроизводимым и позволяют передавать расчет другому пользователю без устных пояснений.

Пример

Дано: A2 = 15.01.2024, B2 = 14.05.2024. Нужно найти число полных месяцев. Формула: =DATEDIF(A2,B2,"m"). Подстановка по смыслу: от 15 января до 15 апреля прошло 3 полных месяца, до 14 мая четвертый месяц не завершен. Ответ: 3. Проверка: если заменить B2 на 15.05.2024, результат станет 4, потому что четвертый полный месяц уже прошел. Дополнительная проверка: измените одно исходное значение и убедитесь, что результат пересчитался именно так, как ожидается. Затем проверьте крайний случай: пустую ячейку, дату на границе периода, занятую область разлива или адрес с пробелом. Если формула копируется вниз, посмотрите две соседние строки и убедитесь, что относительные ссылки сместились, а фиксированные параметры остались на месте. Такой мини-тест занимает меньше минуты и обычно ловит ошибки локали, типов данных и неполных диапазонов.

Частая ошибка

Чаще всего конечную дату ставят первым аргументом и получают ошибку. Еще забывают кавычки вокруг кода m или y. Неполный месяц не округляется вверх, поэтому результат может казаться меньше ожидаемого. После импорта CSV даты часто выглядят правильно, но остаются текстом; это проверяют пробным вычитанием дат. Отдельно проверьте локаль: формула из англоязычной инструкции может требовать замены запятых на точки с запятой, а локализованное имя функции может отличаться. Не смешивайте текстовые даты, числа как текст и настоящие числовые значения в одном расчете.

Практика

Задачи с решением

Стаж

Условие. A2 = 01.03.2020, B2 = 28.02.2026. Сколько полных лет?

Решение. =DATEDIF(A2,B2,"y") вернет 5, потому что шестой год завершится 01.03.2026.

Ответ. 5

Дни

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

Решение. Используют код d: =DATEDIF(A2,B2,"d").

Ответ. =DATEDIF(A2,B2,"d")

Дополнительные источники

  • Microsoft Support: Excel functions by category — https://support.microsoft.com/office/excel-functions-by-category-5f91f4e9-7b42-46d2-9bd1-63f26a86c0eb
  • Microsoft Support: Excel functions alphabetical — https://support.microsoft.com/office/excel-functions-alphabetical-b3944572-255d-4efb-bb96-c6d90033e188
  • Microsoft Support: Overview of formulas in Excel — https://support.microsoft.com/office/overview-of-formulas-in-excel-ecfdc708-9162-49e8-b993-c311f47ca173
  • Microsoft Support: DATEDIF function — https://support.microsoft.com/office/datedif-function-25dba1a4-2812-480b-84dd-8b32a451b35c

Связанные формулы

Excel и Google Workspace

Разница между датами в Excel и Google Таблицах

$=B2-A2$

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

Excel и Google Workspace

YEAR / ГОД: год из даты в Excel и Google Таблицах

$=YEAR(A2)$

YEAR извлекает год из даты в рабочей таблице. Страница показывает международную запись для Excel и Google Таблиц, русское имя функции там, где оно используется, и практические ограничения, из-за которых результат часто отличается от ожиданий.

Excel и Google Workspace

MONTH / МЕСЯЦ: месяц из даты в Excel и Google Таблицах

$=MONTH(A2)$

MONTH извлекает номер месяца в рабочей таблице. Страница показывает международную запись для Excel и Google Таблиц, русское имя функции там, где оно используется, и практические ограничения, из-за которых результат часто отличается от ожиданий.

Excel и Google Workspace

DAY / ДЕНЬ: день месяца из даты в Excel и Google Таблицах

$=DAY(A2)$

DAY извлекает день месяца в рабочей таблице. Страница показывает международную запись для Excel и Google Таблиц, русское имя функции там, где оно используется, и практические ограничения, из-за которых результат часто отличается от ожиданий.