Возможности !SEMTools
↑ Навигация по задачам в Excel и возможностям надстройки !SEMTools ↑

РАЗНДАТ

Функция РАЗНДАТ в Excel считает разницу между двумя датами: =РАЗНДАТ(A2;B2;"Y") — полные годы (возраст, стаж), =РАЗНДАТ(A2;B2;"M") — полные месяцы, =РАЗНДАТ(A2;B2;"D") — дни. Возраст в формате «лет, месяцев, дней» собирают из трёх РАЗНДАТ с интервалами "Y", "YM" и "MD". Функция скрыта: её нет в списке подсказок, но если ввести формулу вручную, она работает во всех версиях Excel. Первой указывается более ранняя дата, иначе будет #ЧИСЛО!.

Функция РАЗНДАТ - простейшие примеры
Раздел функцийФункции даты и времени
Название и описание на английскомDATEDIF
ВолатильностьНе волатильная
Похожие функцииДНИ (англ. DAYS) — разница в днях между двумя датами
ЧИСТРАБДНИ — разница в рабочих днях
ДОЛЯГОДА — разница между датами, где единица равна году.
ГОД, МЕСЯЦ, ДЕНЬ — можно составить свою логику расчёта без РАЗНДАТ

Что делает функция РАЗНДАТ?

Функция РАЗНДАТ возвращает разницу между двумя датами в заданных единицах: годах, месяцах, днях или их комбинациях. Удобна для расчёта возраста, стажа, длительности проектов, «чистых» месяцев без учёта лет и т. д. В русской версии Excel функция есть, но может не отображаться в мастере функций — вводите её вручную.

Синтаксис функции РАЗНДАТ

=РАЗНДАТ(Дата_начала;Дата_конца;"интервал")
  • Дата_начала — более ранняя дата
  • Дата_конца — более поздняя дата
  • "интервал" — строковый код единиц измерения разницы (см. ниже)

Интервалы

  • "Y" — полные годы между датами
  • "M" — полные месяцы между датами
  • "D" — дни между датами
  • "YM" — месяцы без учёта полных лет
  • "YD" — дни без учёта полных лет
  • "MD" — дни без учёта полных месяцев и лет

Когда использовать

  • Возраст сотрудника или клиента в годах, месяцах и днях
  • Стаж работы (полные годы и месяцы)
  • Длительность проекта в месяцах или днях
  • Сколько полных месяцев прошло с начала периода (без учёта лет)

Примеры с РАЗНДАТ

1. Полные годы между датами

=РАЗНДАТ(A2;B2;"Y")

Если A2 = 15.03.2000, B2 = 01.02.2025 → результат: 24

Годы, месяцы и дни между датами
C2=РАЗНДАТ(A2;B2;"Y")
ABCDE
1НачалоКонецЛет "Y"Месяцев "M"Дней "D"
215.03.200001.02.202524=РАЗНДАТ(A2;B2;"Y")298=РАЗНДАТ(A2;B2;"M")9089=РАЗНДАТ(A2;B2;"D")
331.01.202401.03.20240=РАЗНДАТ(A3;B3;"Y")1=РАЗНДАТ(A3;B3;"M")30=РАЗНДАТ(A3;B3;"D")

С 31.01 по 01.03 прошёл только один полный месяц: 29 февраля ещё не «31-е» число. Количество дней можно посчитать и простым вычитанием =B2-A2.

В английском Excel: =DATEDIF(A2,B2,"Y")

2. Полные месяцы между датами

=РАЗНДАТ(A2;B2;"M")

3. Дни между датами

=РАЗНДАТ(A2;B2;"D")

4. Возраст в формате «годы + месяцы»

=РАЗНДАТ(A2;B2;"Y") & " лет " & РАЗНДАТ(A2;B2;"YM") & " мес."

5. Возраст в формате «годы, месяцы, дни»

РАЗНДАТ в составной формуле для текстового представления возраста - лет, месяцев, дней
=РАЗНДАТ(A2;B2;"Y") & " г. " & РАЗНДАТ(A2;B2;"YM") & " мес. " & РАЗНДАТ(A2;B2;"MD") & " д."
Возраст или стаж в годах, месяцах и днях
D2=РАЗНДАТ(A2;B2;"Y")&" г. "&РАЗНДАТ(A2;B2;"YM")&" мес. "&РАЗНДАТ(A2;B2;"MD")&" д."
ABCD
1Дата рожденияНа датуГоды и месяцыГоды, месяцы, дни
215.03.200001.02.202524 лет 10 мес.=РАЗНДАТ(A2;B2;"Y")&" лет "&РАЗНДАТ(A2;B2;"YM")&" мес."24 г. 10 мес. 17 д.=РАЗНДАТ(A2;B2;"Y")&" г. "&РАЗНДАТ(A2;B2;"YM")&" мес. "&РАЗНДАТ(A2;B2;"MD")&" д."
309.07.199021.10.202636 лет 3 мес.=РАЗНДАТ(A3;B3;"Y")&" лет "&РАЗНДАТ(A3;B3;"YM")&" мес."36 г. 3 мес. 12 д.=РАЗНДАТ(A3;B3;"Y")&" г. "&РАЗНДАТ(A3;B3;"YM")&" мес. "&РАЗНДАТ(A3;B3;"MD")&" д."

Чтобы считать возраст на сегодня, замените B2 на СЕГОДНЯ(): =РАЗНДАТ(A2;СЕГОДНЯ();"Y").

В английском Excel: =DATEDIF(A2,B2,"Y")&" г. "&DATEDIF(A2,B2,"YM")&" мес. "&DATEDIF(A2,B2,"MD")&" д."

РАЗНДАТ не работает?

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

Если начальная дата больше конечной, функция возвращает ошибку #ЧИСЛО!. Пользователь может подумать, что функция не работает, хотя причина — в неправильном порядке дат.

Начальная дата позже конечной
D2=РАЗНДАТ(МИН(A2:B2);МАКС(A2:B2);"D")
ABCD
1Дата 1Дата 2Как естьПорядок не важен
221.10.202610.01.2026#ЧИСЛО!=РАЗНДАТ(A2;B2;"D")284=РАЗНДАТ(МИН(A2:B2);МАКС(A2:B2);"D")

МИН и МАКС сами ставят даты в правильном порядке. Если важен знак разницы, используйте простое вычитание =B2-A2.

В английском Excel: =DATEDIF(MIN(A2:B2),MAX(A2:B2),"D")

Почему нет формулы РАЗНДАТ?

Функция РАЗНДАТ изначально появилась в Lotus 1-2-3 — популярной таблице 90-х годов. Microsoft добавила её в Excel ради обратной совместимости, но никогда официально не продвигала как полноценную функцию. Её считали вспомогательной, устаревшей и предназначенной для тех, кто переходит с других систем.

Тем не менее, из-за широкой популярности и полезности (особенно для расчётов возраста, стажа и т.п.), её оставили в Excel, но скрыли из интерфейса:

  • не отображается в списке функций;
  • нет подсказки по аргументам;
  • нет справки F1;
  • нет описания в «Мастере функций».

РАЗНДАТ: формат результата и исходных данных

Если даты форматированы как текст, предварительно преобразуйте их через ДАТАЗНАЧ или убедитесь, что Excel их распознаёт как даты.

Полезные комбинации с РАЗНДАТ

  • Полные месяцы без учёта лет: "YM"
  • Дни с игнорированием лет: "YD"
  • Разбивка на годы-месяцы-дни (см. пример выше) — самый частый кейс
Интервалы без учёта лет и месяцев
D2=РАЗНДАТ(A2;B2;"YD")
ABCDE
1Дата рожденияСегодняМесяцев без лет "YM"Дней без лет "YD"Дней без месяцев "MD"
209.07.199021.10.20263=РАЗНДАТ(A2;B2;"YM")104=РАЗНДАТ(A2;B2;"YD")12=РАЗНДАТ(A2;B2;"MD")

"YD" показывает, сколько дней прошло с последнего дня рождения: значит, до следующего осталось 365 минус это число (с поправкой на високосный год).

Другие функции "Дата и время" в Excel

ВРЕМЗНАЧ, ВРЕМЯ, ГОД, ДАТА, ДАТАЗНАЧ, ДАТАМЕС, ДЕНЬ, ДЕНЬНЕД, ДОЛЯГОДА, КОНМЕСЯЦА, МЕСЯЦ, МИНУТЫ, НОМНЕДЕЛИ и НОМНЕДЕЛИ.ISO, РАБДЕНЬ, СЕГОДНЯ, СЕКУНДЫ, ТДАТА, ЧАС, ЧИСТРАБДНИ

Ошибки РАЗНДАТ

  • #ЧИСЛО!. Начальная дата позже конечной. Поменяйте аргументы местами или используйте МИН и МАКС.
  • #ЗНАЧ!. Одна из дат записана текстом, который Excel не распознал. Переведите её функцией ДАТАЗНАЧ.
  • #ИМЯ?. Ошибка в названии функции или интервал без кавычек: правильно "Y", а не Y.
  • Странный результат с "MD". Microsoft предупреждает, что интервал "MD" может давать неточные значения, например в конце месяца. Для дней сверх полных месяцев надёжнее =B2-ДАТАМЕС(A2;РАЗНДАТ(A2;B2;"M")).
  • Результат показан как дата. У ячейки формат даты — поставьте «Общий» или «Числовой».

Функция РАЗНДАТ — частые вопросы

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

Дни — простым вычитанием =B2-A2, полные месяцы — =РАЗНДАТ(A2;B2;"M"), полные годы — =РАЗНДАТ(A2;B2;"Y").

Почему функции РАЗНДАТ нет в списке функций?

Она оставлена для совместимости с Lotus 1-2-3 и скрыта из подсказок и Мастера функций. Введите её вручную — она работает. Скачивать или подключать ничего не нужно.

Как посчитать возраст в годах и месяцах?

Формулой =РАЗНДАТ(A2;СЕГОДНЯ();"Y")&" лет "&РАЗНДАТ(A2;СЕГОДНЯ();"YM")&" мес.".

Как называется РАЗНДАТ на английском?

DATEDIF. Интервалы те же: "Y", "M", "D", "YM", "YD", "MD".

Посчитать разницу дат, стаж, возраст и сроки сразу для всего столбца, а также извлечь из дат год, месяц или день недели можно в пару кликов с !SEMTools.
!SEMTools решает эту и сотни других задач в пару кликов!

Итоги: функция РАЗНДАТ в Excel

ЗадачаФормула
Полные годы (возраст, стаж)=РАЗНДАТ(A2;B2;"Y")
Полные месяцы=РАЗНДАТ(A2;B2;"M")
Дни=РАЗНДАТ(A2;B2;"D") или =B2-A2
Годы и месяцы"Y" + "YM"
Годы, месяцы, дни"Y" + "YM" + "MD"
Возраст на сегодня=РАЗНДАТ(A2;СЕГОДНЯ();"Y")

Надеюсь, на этой странице вы нашли то, что искали. РАЗНДАТ — самый короткий способ получить «чистые» годы и месяцы между датами; главное — ранняя дата первой.

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*