Datediff excel на русском

Функция DATEDIF (РАЗНДАТ) в Excel используется для подсчета количества лет, месяцев или дней между двумя датами. Хороший пример — подсчет возраста.

Содержание

  1. Что возвращает функция
  2. Синтаксис
  3. Аргументы функции
  4. Дополнительная информация
  5. Примеры использования функции РАЗНДАТ в Excel
  6. Пример №1. Подсчет количества лет между двумя датами
  7. Пример №2. Подсчет количества месяцев между двумя датами
  8. Пример №3. Подсчет количества дней между двумя датами

Что возвращает функция

Число, обозначающее количество лет/месяцев/дней между двумя датами. Какие значения будут отображаться (год, месяц или дни) зависит от того, что будет указано вами в атрибутах функции.

Синтаксис

=DATEDIF(start_date,end_date,unit) — английская версия

=РАЗНДАТ(нач_дата;кон_дата;единица) — русская версия

Аргументы функции

  • start_date (нач_дата): дата, с которой начинается вычисление разницы во времени между двумя датами. Дата может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления (например в функции ДАТА());
  • end_date (кон_дата): дата, на которой вычисление разницы во времени между двумя датами будет окончено. Она, также, может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления;
  • unit (единица): Этот аргумент определяет в каком измерении будет отображена разница между двумя датами (год, месяц, день). Существует 6 различных типов отражения данных:
  • “Y” — возвращает данные в количестве лет между двумя датами;
  • “M” — возвращает данные в количестве месяцев между двумя датами;
  • “D” — возвращает данные в количестве дней между двумя данными;
  • “MD” — возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, месяца, которые уже прошли при расчете данных. Например, если вы рассчитываете количество дней между двумя датами: 1 Января 2017 и 3 Марта 2017, функция выдаст значение “2”, так как не будет учитывать два прошедших полных месяцев (Январь, Февраль);
  • “YM” — возвращает данные в количестве месяцев между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными данными;
  • “YD” — возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными датами.

Дополнительная информация

  • При вводе функции в ячейку, она не отображается в быстром меню выбора функций. Тем не менее функция работает во всех версиях Excel. Важно знать аргументы функции и как ими пользоваться;
  • Данные даты в функции могут быть введены как:
    — дата указанная в виде текста в кавычках;
    — число;
    — как результат вычисления, формулы, функции.

Примеры использования функции РАЗНДАТ в Excel

Пример №1. Подсчет количества лет между двумя датами

DATEDIF (РАЗНДАТ) в Excel

На примере выше, формула возвращает количество лет между двумя датами. Например, функция вернет значение “27” если вы захотите посчитать количество полных лет между двумя датами 19 июня 1989 года и 26 марта 2017 года. Система подсчитывает количество полных лет и игнорирует количество месяцев и дней между датами.

Пример №2. Подсчет количества месяцев между двумя датами

DATEDIF (РАЗНДАТ) полных месяцев в Excel

На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество полных месяцев между двумя датами — 19 июня 1989 года и 26 марта 2017 года.

Telegram Logo Больше лайфхаков в нашем Telegram Подписаться

Функция возвращает значение “333”, что является количеством полных месяцев между датами указанными выше.

Пример №3. Подсчет количества дней между двумя датами

Функция DATEDIF (РАЗНДАТ) в Excel. Количество дней между датами

На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество дней между двумя датами. Например, функция возвращает значение “10142” дня между двумя датами — 19 июня 1989 года и 26 марта 2017 года.

Если вы хотите посчитать количество дней между двумя датами, исключая количество лет, которые уже завершены, вам нужно использовать аргумент “YD” в качестве третьего (пример на рисунке ниже):

Функция DATEDIF (РАЗНДАТ) в Excel. Количество дней между двумя датами исключая годы

В приведенном выше примере он возвращает значение “280”, то есть число дней между днями, исключая 27 полных лет.

Если вы хотите посчитать количество дней между двумя датами, исключая количество полных лет и месяцев, используйте атрибут “MD” в качестве третьего аргумента (как показано на рис. ниже):

Функция DATEDIF (РАЗНДАТ) в Excel - количество дней между датами исключая годы и месяцы

На примере выше функция возвращает значение “7” означающие количество дней между двумя днями «19» и «26» число, исключая значения лет и месяцев.

Содержание

  1. Функция DateDiff
  2. Синтаксис
  3. Параметры
  4. Примечания
  5. Пример
  6. См. также
  7. Поддержка и обратная связь
  8. Функция РАЗНДАТ
  9. Синтаксис
  10. Замечания
  11. Примеры
  12. Известные проблемы
  13. Дополнительные сведения
  14. Функция РАЗНДАТ() — Вычисление разности двух дат в днях, месяцах, годах в EXCEL
  15. Синтаксис функции:
  16. 1. Разница в днях («d»)
  17. 2. Разница в полных месяцах («m»)
  18. 3. Разница в полных годах («y»)
  19. 4. Разница в полных месяцах без учета лет («ym»)
  20. 5. Разница в днях без учета месяцев и лет («md»)
  21. 6. Разница в днях без учета лет («yd»)
  22. Еще раз о кривизне РАЗНДАТ()

Функция DateDiff

Возвращает значение типа Variant (Long), указывающее на количество интервалов времени между двумя указанными датами.

Синтаксис

DateDiff(интервал, дата1, дата2, [ первый_день_недели, [ первая_неделя_года ]] )

Синтаксис функции DateDiff использует следующие именованные аргументы:

Часть Описание
интервал Обязательный аргумент. Строковое выражение, которое обозначает интервал времени, используемый для вычисления разницы значений дата1 и дата2.
дата1, дата2 Обязательный элемент; Variant (Date). Две даты, которые требуется использовать в расчете.
первый_день_недели Необязательный аргумент. Константа, задающая первый день недели. Если она не указана, им является воскресенье.
первая_неделя_года Необязательно. Константа, задающая первую неделю года. Если она не указана, первой неделею является неделя, начинающаяся 1 января.

Параметры

Аргументinterval имеет следующие параметры:

Setting Описание
yyyy Год
q Квартал
m Месяц
y День года
d День
w День недели
ww Неделя
h Часы
n Минуты
s Секунды

Аргумент первый_день_недели может принимать следующие значения:

Константа Значение Описание
vbUseSystem 0 Используются параметры API NLS.
vbSunday 1 Воскресенье (по умолчанию)
vbMonday 2 Понедельник
vbTuesday 3 Вторник
vbWednesday 4 Среда
vbThursday 5 Четверг
vbFriday 6 Пятница
vbSaturday 7 Суббота

Аргумент firstweekofyear имеет следующие параметры:

Константа Значение Описание
vbUseSystem 0 Используются параметры API NLS.
vbFirstJan1 1 Начать с недели, содержащей 1 января (по умолчанию).
vbFirstFourDays 2 Первой неделей считается та, которая содержит хотя бы четыре дня нового года.
vbFirstFullWeek 3 Первой неделей считается первая полная неделя года.

Примечания

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

Для вычисления числа дней между аргументами дата1 и дата2 используется значение «День года» («y») или «День» («d»). Если интервал задан как «День недели» («w»), DateDiff возвращает число недель между двумя датами. Если день дата1 приходится на понедельник, DateDiff считает число понедельников до дня дата2. День, соответствующий значению аргумента дата2, учитывается, а дата1 — нет.

Однако если интервал задан как «Неделя» («ww»), функция DateDiff возвращает число календарных недель между двумя датами. Для этого рассчитывается число воскресений между днями дата1 и дата2. DateDiff учитывает день дата2, если он приходится на воскресенье; день дата1 не учитывается, даже если он приходится на воскресенье.

Если значение дата1 соответствует более поздней дате, чем значение дата2, функция DateDiff возвращает отрицательное число. Аргумент первый_день_недели влияет на вычисления, если заданы значения «w» и «ww».

Если аргумент дата1 или дата2 содержит литерал даты, указанный год становится постоянной частью этой даты. Однако если аргумент дата1 или дата2 заключен в двойные кавычки (» «), а год опущен, при каждом вычислении выражения дата1 или дата2 в код вставляется текущий год. Это позволяет писать код, который можно использовать для разных лет.

При сравнении 31 декабря с 1 января следующего года функция DateDiff для года («yyyy») возвращает значение 1, не смотря на то, что разница составляет всего один день.

Если в свойстве Calendar задан григорианский календарь, аргументы дата1 и дата2 следует указывать соответствующим образом. Если используется календарь Хиджра, дата должна соответствовать ему.

Пример

В данном примере функция DateDiff отображает число дней между указанной датой и сегодняшним днем.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Источник

Функция РАЗНДАТ

Вычисляет количество дней, месяцев или лет между двумя датами.

Предупреждение: Функция РАЗНДАТ предлагается в Excel для поддержки старых книг Lotus 1-2-3. В некоторых ситуациях она может выдавать неправильные результаты. Дополнительные сведения см. в разделе «Известные проблемы» в этой статье.

Синтаксис

РАЗНДАТ( нач_дата, кон_дата, единица)

Дата, которая представляет первую или даты начала заданного периода. Даты можно вводить в виде текстовых строк в кавычках (например, «30.1.2001»), в виде порядковых номеров (например, 36921 представляет 30 января 2001 г., если используется система дат 1900) или как результаты вычисления других формул или функций (например ДАТАЗНАЧ(«30.1.2001»)).

Дата окончания периода.

Тип возвращаемой информации, где:

Количество полных лет в периоде.

Количество полных месяцев в периоде.

Количество дней в периоде.

Разница в днях между начальной и конечной датой. Месяцы и годы дат не учитываются.

Важно: Не рекомендуется использовать аргумент «MD», так как с ним связаны определенные ограничения. См. раздел «Известные проблемы» ниже.

Разница в месяцах между начальной и конечной датой. Дни и годы дат не учитываются.

Разница в днях между начальной и конечной датой. Годы дат не учитываются.

Замечания

Даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 447 дней.

Функция РАЗНДАТ полезна в формулах расчета возраста.

Если он tart_date больше, чем e nd_date,результат будет #NUM!.

Примеры

Два полных года в периоде (2).

440 дней между 1 июня 2001 г. и 15 августа 2002 г. (440)

75 дней между 1 июня и 15 августа без учета годов дат (75)

Известные проблемы

При использовании аргумента «MD» результатом может быть отрицательное число, нуль или неверное значение. Если вы пытаетесь вычислить оставшиеся дни после последнего полного месяца, вот как можно это сделать:

Эта формула вычитает первый день окончания месяца (01.05.2016) из исходной даты окончания в ячейке E17 (06.05.2016). Вот как это делается: сначала функция ДАТА создает дату 01.05.2016. Она создается с помощью года в ячейке E17 и месяца в ячейке E17. 1 обозначает первый день месяца. Результатом функции ДАТА будет 01.05.2016. Затем мы вычитаем эту дату из исходной даты окончания в ячейке E17 (06.05.2016), в результате чего получается 5 дней.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Источник

Функция РАЗНДАТ() — Вычисление разности двух дат в днях, месяцах, годах в EXCEL

history 8 апреля 2013 г.

Если Вам требуется рассчитать стаж (страховой) в годах, месяцах, днях, то, пожалуйста, воспользуйтесь расчетами выполненными в статье Расчет страхового (трудового) стажа в MS EXCEL .

Функции РАЗНДАТ( ) нет в справке EXCEL2007 и в Мастере функций ( SHIFT + F 3 ), но она работает, хотя и не без огрех.

Синтаксис функции:

РАЗНДАТ(начальная_дата; конечная_дата; способ_измерения)

Аргумент начальная_дата должна быть раньше аргумента конечная_дата .

Аргумент способ_измерения определяет, как и в каких единицах будет измеряться интервал между начальной и конечной датами. Этот аргумент может принимать следующие значения:

Значение

Описание

разница в полных месяцах

разница в полных годах

разница в полных месяцах без учета лет

разница в днях без учета месяцев и лет ВНИМАНИЕ! Функция для некоторых версий EXCEL возвращает ошибочное значение, если день начальной даты больше дня конечной даты (например, в EXCEL 2007 при сравнении дат 28.02.2009 и 01.03.2009 результат будет 4 дня, а не 1 день). Избегайте использования функции с этим аргументом. Альтернативная формула приведена ниже.

разница в днях без учета лет ВНИМАНИЕ! Функция для некоторых версий EXCEL возвращает ошибочное значение. Избегайте использования функции с этим аргументом.

Ниже приведено подробное описание всех 6 значений аргумента способ_измерения , а также альтернативных формул (функцию РАЗНДАТ() можно заменить другими формулами (правда достаточно громоздкими). Это сделано в файле примера ).

В файле примера значение аргумента начальная_дата помещена в ячейке А2 , а значение аргумента конечная_дата – в ячейке В2 .

1. Разница в днях («d»)

Формула =РАЗНДАТ(A2;B2;»d») вернет простую разницу в днях между двумя датами.

Пример1: начальная_дата 25.02.2007, конечная_дата 26.02.2007 Результат: 1 (день).

Этот пример показыват, что при подсчете стажа необходимо использовать функцию РАЗНДАТ() с осторожностью. Очевидно, что если сотрудник работал 25 и 26 февраля, то отработал он 2 дня, а не 1. То же относится и к расчету полных месяцев (см. ниже).

Пример2: начальная_дата 01.02.2007, конечная_дата 01.03.2007 Результат: 28 (дней)

Пример3: начальная_дата 28.02.2008, конечная_дата 01.03.2008 Результат: 2 (дня), т.к. 2008 год — високосный

Эта формула может быть заменена простым выражением =ЦЕЛОЕ(B2)-ЦЕЛОЕ(A2) . Функция ЦЕЛОЕ() округляет значение до меньшего целого и использована для того случая, если исходные даты введены вместе с временем суток ( РАЗНДАТ() игнорирует время, т.е. дробную часть числа, см. статью Как Excel хранит дату и время ).

Примечание : Если интересуют только рабочие дни, то к оличество рабочих дней между двумя датами можно посчитать по формуле =ЧИСТРАБДНИ(B2;A2)

2. Разница в полных месяцах («m»)

Формула =РАЗНДАТ(A2;B2;»m») вернет количество полных месяцев между двумя датами.

Пример1: начальная_дата 01.02.2007, конечная_дата 01.03.2007 Результат: 1 (месяц)

Пример2: начальная_дата 01.03.2007, конечная_дата 31.03.2007 Результат: 0

При расчете стажа, считается, что сотрудник отработавший все дни месяца — отработал 1 полный месяц. Функция РАЗНДАТ() так не считает!

Пример3: начальная_дата 01.02.2007, конечная_дата 01.03.2009 Результат: 25 месяцев

Формула может быть заменена альтернативным выражением: =12*(ГОД(B2)-ГОД(A2))-(МЕСЯЦ(A2)-МЕСЯЦ(B2))-(ДЕНЬ(B2)

Внимание : В справке MS EXCEL (см. раздел Вычисление возраста) имеется кривая формула для вычисления количества месяце между 2-мя датами:

Если вместо функции ТДАТА() — текущая дата использовать дату 31.10.1961, а в А3 ввести 01.11.1962, то формула вернет 13, хотя фактически прошло 12 месяцев и 1 день (ноябрь и декабрь в 1961г. + 10 месяцев в 1962г.).

3. Разница в полных годах («y»)

Формула =РАЗНДАТ(A2;B2;»y») вернет количество полных лет между двумя датами.

Пример1: начальная_дата 01.02.2007, конечная_дата 01.03.2009 Результат: 2 (года)

Пример2: начальная_дата 01.04.2007, конечная_дата 01.03.2009 Результат: 1 (год)

Подробнее читайте в статье Полный возраст или стаж .

Формула может быть заменена альтернативным выражением: =ЕСЛИ(ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2))

4. Разница в полных месяцах без учета лет («ym»)

Формула =РАЗНДАТ(A2;B2;»ym») вернет количество полных месяцев между двумя датами без учета лет (см. примеры ниже).

Пример1: начальная_дата 01.02.2007, конечная_дата 01.03.2009 Результат: 1 (месяц), т.к. сравниваются конечная дата 01.03.2009 и модифицированная начальная дата 01.02. 2009 (год начальной даты заменяется годом конечной даты, т.к. 01.02 меньше чем 01.03)

Пример2: начальная_дата 01.04.2007, конечная_дата 01.03.2009 Результат: 11 (месяцев), т.к. сравниваются конечная дата 01.03.2009 и модифицированная начальная дата 01.04. 2008 (год начальной даты заменяется годом конечной даты за вычетом 1 года , т.к. 01.04 больше чем 01.03)

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

Формула может быть заменена альтернативным выражением: =ОСТАТ(C7;12) В ячейке С7 должна содержаться разница в полных месяцах (см. п.2).

5. Разница в днях без учета месяцев и лет («md»)

Формула =РАЗНДАТ(A2;B2;»md») вернет количество дней между двумя датами без учета месяцев и лет. Использовать функцию РАЗНДАТ() с этим аргументом не рекомендуется (см. примеры ниже).

Пример1: начальная_дата 01.02.2007, конечная_дата 06.03.2009 Результат1: 5 (дней), т.к. сравниваются конечная дата 06.03.2009 и модифицированная начальная дата 01. 03 . 2009 (год и месяц начальной даты заменяется годом и месяцем конечной даты, т.к. 01 меньше чем 06)

Пример2: начальная_дата 28.02.2007, конечная_дата 28.03.2009 Результат2: 0, т.к. сравниваются конечная дата 28.03.2009 и модифицированная начальная дата 28. 03 . 2009 (год и месяц начальной даты заменяется годом и месяцем конечной даты)

Пример3: начальная_дата 28.02.2009, конечная_дата 01.03.2009 Результат3: 4 (дня) — совершенно непонятный и НЕПРАВИЛЬНЫЙ результат. Ответ должен быть =1. Более того, результат вычисления зависит от версии EXCEL.

Версия EXCEL 2007 с SP3:

Результат – 143 дня! Больше чем дней в месяце!

Версия EXCEL 2007:

Разница между 28.02.2009 и 01.03.2009 – 4 дня!

Причем в EXCEL 2003 с SP3 формула возвращает верный результат 1 день. Для значений 31.12.2009 и 01.02.2010 результат вообще отрицательный (-2 дня)!

Не советую использовать формулу с вышеуказанным значением аргумента. Формула может быть заменена альтернативным выражением: =ЕСЛИ(ДЕНЬ(A2)>ДЕНЬ(B2); ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B2;-1);0))-ДЕНЬ(A2)+ДЕНЬ(B2); ДЕНЬ(B2)-ДЕНЬ(A2))

Данная формула лишь эквивалетное (в большинстве случаев) выражение для РАЗНДАТ() с параметром md. О корректности этой формуле читайте в разделе «Еще раз о кривизне РАЗНДАТ()» ниже.

6. Разница в днях без учета лет («yd»)

Формула =РАЗНДАТ(A2;B2;»yd») вернет количество дней между двумя датами без учета лет. Использовать ее не рекомендуется по причинам, изложенным в предыдущем пункте.

Результат, возвращаемый формулой =РАЗНДАТ(A2;B2;»yd») зависит от версии EXCEL.

Формула может быть заменена альтернативным выражением: =ЕСЛИ(ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2))>B2; B2-ДАТА(ГОД(B2)-1;МЕСЯЦ(A2);ДЕНЬ(A2)); B2-ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2)))

Еще раз о кривизне РАЗНДАТ()

Найдем разницу дат 16.03.2015 и 30.01.15. Функция РАЗНДАТ() с параметрами md и ym подсчитает, что разница составляет 1 месяц и 14 дней. Так ли это на самом деле?

Имея формулу, эквивалентную РАЗНДАТ() , можно понять ход вычисления. Очевидно, что в нашем случае количество полных месяцев между датами = 1, т.е. весь февраль. Для вычисления дней, функция находит количество дней в предыдущем месяце относительно конечной даты, т.е. 28 (конечная дата принадлежит марту, предыдущий месяц — февраль, а в 2015г. в феврале было 28 дней). После этого отнимает день начала и прибавляет день конечной даты = ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B6;-1);0))-ДЕНЬ(A6)+ДЕНЬ(B6) , т.е. 28-30+16=14. На наш взгляд, между датами все же 1 полный месяц и все дни марта, т.е 16 дней, а не 14! Эта ошибка проявляется, когда в предыдущем месяце относительно конечной даты, дней меньше, чем дней начальной даты. Как выйти из этой ситуации?

Модифицируем формулу для расчета дней разницы без учета месяцев и лет:

При применении новой функции необходимо учитывать, что разница в днях будет одинаковой для нескольких начальных дат (см. рисунок выше, даты 28-31.01.2015). В остальных случаях формулы эквивалентны. Какую формулу применять? Это решать пользователю в зависимости от условия задачи.

Источник

Содержание

  • 1 Что возвращает функция
  • 2 Синтаксис
  • 3 Аргументы функции
  • 4 Дополнительная информация
  • 5 2 популярных способа сравнения 2 дат в Excel
    • 5.1 Первая дата больше второй, или нет
    • 5.2 Функция ЕСЛИ, значение ИСТИНА или ЛОЖЬ
  • 6 Функция РАЗНДАТ – разность двух дат в днях, месяцах и годах
    • 6.1 Пример №1. Подсчет количества лет между двумя датами
    • 6.2 Разница дат в полных месяцах
    • 6.3 Разница в днях без учета лет
    • 6.4 Количество рабочих дней между двумя датами
    • 6.5 Сдвиг даты на заданное количество дней
    • 6.6 Сдвиг даты на заданное количество рабочих дней
    • 6.7 Вычисление дня недели
    • 6.8 Вычисление временных интервалов
  • 7 Еще раз о кривизне РАЗНДАТ()
  • 8 Формула разница дат в Excel

Что возвращает функция

Число, обозначающее количество лет/месяцев/дней между двумя датами. Какие значения будут отображаться (год, месяц или дни) зависит от того, что будет указано вами в атрибутах функции.

Синтаксис

=DATEDIF(start_date,end_date,unit) – английская версия

=РАЗНДАТ(нач_дата;кон_дата;единица) – русская версия

Аргументы функции

  • start_date (нач_дата): дата, с которой начинается вычисление разницы во времени между двумя датами. Дата может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления (например в функции ДАТА());
  • end_date (кон_дата): дата, на которой вычисление разницы во времени между двумя датами будет окончено. Она, также, может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления;
  • unit (единица): Этот аргумент определяет в каком измерении будет отображена разница между двумя датами (год, месяц, день). Существует 6 различных типов отражения данных:
  • “Y” – возвращает данные в количестве лет между двумя датами;
  • “M” – возвращает данные в количестве месяцев между двумя датами;
  • “D” – возвращает данные в количестве дней между двумя данными;
  • “MD” – возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, месяца, которые уже прошли при расчете данных. Например, если вы рассчитываете количество дней между двумя датами: 1 Января 2017 и 3 Марта 2017, функция выдаст значение “2”, так как не будет учитывать два прошедших полных месяцев (Январь, Февраль);
  • “YM” – возвращает данные в количестве месяцев между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными данными;
  • “YD” – возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными датами.

Дополнительная информация

  • При вводе функции в ячейку, она не отображается в быстром меню выбора функций. Тем не менее функция работает во всех версиях Excel. Важно знать аргументы функции и как ими пользоваться;
  • Данные даты в функции могут быть введены как:
    – дата указанная в виде текста в кавычках;
    – число;
    – как результат вычисления, формулы, функции.

2 популярных способа сравнения 2 дат в Excel

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

Первая дата больше второй, или нет

В этом случае нужно использовать аналогичную формулу, которая используется для проверки чисел: =A1>A2. Если эта проверка подтверждается, то в ячейку, куда была записана эта формула, возвращается значение “ИСТИНА”. Если же первое число меньше второго, то тогда будет записано “ЛОЖЬ”. Аналогично, только зеркально противоположно с формулой =A1

Функция ЕСЛИ, значение ИСТИНА или ЛОЖЬ

Это уже более сложный вариант, который дает возможность не только говорить, действительно ли одна дата больше другой, но и указывать, на какое количество дней. Чтобы это сделать, необходимо нажать по ячейке и записать туда формулу =ЕСЛИ(A2>B2;»Первая дата больше второй на»&» «&A2-B2&» «&»дней»;»Первая дата меньше второй на»&» «&B2-A2&» «&»дней»)

Как в Excel сравнить 2 даты между собой - простая инструкция
1

Здесь мы осуществляем проверку двух дат, и исходя из того, что у нас получилось в итоге, выводим результат, на сколько дней первая дата больше, чем вторая. Чтобы это сделать, нами был использовал оператор &, который объединяет две строки текста между собой и объединенный результат возвращает в ячейку. Далее получившийся текст можно использовать сам по себе или в других формулах.

Функция РАЗНДАТ – разность двух дат в днях, месяцах и годах

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

Ее синтаксис элементарный.

РАЗНДАТ(начальная_дата; конечная_дата; способ_измерения)

Единственный из этих аргументов, который действительно может вызвать вопросы у неподготовленного читателя – это способ измерения. С его помощью мы задаем, в каких единицах будет измеряться разница между датами. Это может быть количество месяцев, лет или количество месяцев без учета лет. Еще один вариант – это количество дней без учета месяцев и лет. 

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

Пример №1. Подсчет количества лет между двумя датами

DATEDIF (РАЗНДАТ) в Excel

На примере выше, формула возвращает количество лет между двумя датами. Например, функция вернет значение “27” если вы захотите посчитать количество полных лет между двумя датами 19 июня 1989 года и 26 марта 2017 года. Система подсчитывает количество полных лет и игнорирует количество месяцев и дней между датами.

Разница дат в полных месяцах

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

То есть, формула следующая.

=РАЗНДАТ(A2;B2;”m”)

Эта формула также может давать несколько неточные данные. Поэтому всегда нужно перепроверять значения самостоятельно. 

Разница в днях без учета лет

Эта формула также может использоваться для определения количества дней между двумя датами, но при этом не учитывать количество лет, которое прошло между этими двумя временными точками. Эта возможность есть, но пользоваться ею настоятельно не рекомендуется, потому что искажений в этом случае может быть еще больше.

Как в Excel сравнить 2 даты между собой - простая инструкция
1

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

Количество рабочих дней между двумя датами

Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):

как сделать сравнение дат в excel

Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).

Сдвиг даты на заданное количество дней

Поскольку одни сутки в системе отсчета даты Excel принимаются за единицу (см.выше), то для вычисления даты, отстоящей от заданной на, допустим, 20 дней, достаточно прибавить к дате это число.

Сдвиг даты на заданное количество рабочих дней

Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ(NETWORKDAYS) описанной выше.

Вычисление дня недели

Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.

как сделать сравнение дат в excel

Первый аргумент этой функции — ячейка с датой, второй — тип отсчета дней недели (самый удобный — 2).  

Вычисление временных интервалов

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

Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:

как сделать сравнение дат в excel

Еще раз о кривизне РАЗНДАТ()

Найдем разницу дат 16.03.2015 и 30.01.15. Функция РАЗНДАТ() с параметрами md и ym подсчитает, что разница составляет 1 месяц и 14 дней. Так ли это на самом деле?

Вычисление разности дат в Microsoft Excel. Функция DATEDIF (РАЗНДАТ) в Excel. Как использовать?

Имея формулу, эквивалентную РАЗНДАТ() , можно понять ход вычисления. Очевидно, что в нашем случае количество полных месяцев между датами = 1, т.е. весь февраль. Для вычисления дней, функция находит количество дней в предыдущем месяце относительно конечной даты, т.е. 28 (конечная дата принадлежит марту, предыдущий месяц — февраль, а в 2015г. в феврале было 28 дней). После этого отнимает день начала и прибавляет день конечной даты = ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B6;-1);0))-ДЕНЬ(A6)+ДЕНЬ(B6) , т.е. 28-30+16=14. На наш взгляд, между датами все же 1 полный месяц и все дни марта, т.е 16 дней, а не 14! Эта ошибка проявляется, когда в предыдущем месяце относительно конечной даты, дней меньше, чем дней начальной даты.

Формула возвращает разницу дат между сегодняшней и установленной планом в днях. Для решения данной задачи используется функция РАЗНДАТ в Excel: где найти эту формулу?

Данную функцию вы не найдете в мастере функций и даже на панели «ФОРМУЛЫ». Ее всегда нужно вводить вручную. Первым аргументом функции всегда должна быть новейшая дата, а вторым всегда – старшая дата. Третий аргумент функции определяет единицу измерения количества, которое возвращает функция =РАЗНДАТ(). В данном случае это символ «d» – дней. Это значит, что функция возвращает количество дней. Дальше следует оператор <7. То есть формула проверяет, если функция возвращает число меньше чем 7, то формула возвращает значение ИСТИНА и к текущей ячейке применяется условное форматирование. Ссылки на ячейки в первом аргумент абсолютная (значение неизменяемое), а во втором аргументе – относительная, так как проверятся будут несколько ячеек в столбце C.

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

Цвет форматирования для второго правила можно задать желтый. К одному и тому же диапазону должно быть применено 2 правила условного форматирования. Чтобы проверить выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Управление правилами». Так как у нас сначала выполняется верхнее правило следует изменить их порядок в появившемся окне: «Диспетчер правил условного форматирования». Иначе все выделенные задачи будут иметь желтую заливку ячеек.

Полезный совет! Если к одному и тому же диапазону присвоено много правил – соблюдайте иерархию приоритетов порядка их выполнения в диспетчере управления правилами. Чем выше правило, тем выше его приоритет выполнения по отношению к другим расположенных ниже под ним.

Источники

  • https://excelhack.ru/funkciya-datedif-razndat-v-excel/
  • https://office-guru.ru/excel/data-vremja/kak-v-excel-sravnit-2-daty-mezhdu-soboj-prostaya-instrukciya.html
  • http://word-office.ru/kak-sdelat-sravnenie-dat-v-excel.html
  • https://excelka.ru/voprosy/kak-v-excel-sravnit-dve-daty.html
  • https://exceltable.com/formatirovanie/raznica-mejdu-datami

Для вычислений длительностей интервалов дат в Excel есть функция РАЗНДАТ, в английской версии — DATEDIF.

Нюанс в том, что Вы не найдете эту функцию в списке Мастера функций, нажав кнопку fx — она является недокументированной возможностью Excel. Точнее говоря, найти описание этой функции и ее аргументов можно только в полной версии англоязычной справки, поскольку на самом деле она оставлена для совместимости со старыми версиями Excel и Lotus 1-2-3. Однако, несмотря на то, что эту функцию не получится вставить стандартным способом через окно Вставка — Функция (Insert — Function), ее можно вручную вписать в ячейку с клавиатуры — и она сработает!

Синтаксис функции следующий:

=РАЗНДАТ(Начальная_дата; Конечная_дата; Способ_измерения)

С первыми двумя аргументами все более-менее понятно — это ячейки со стартовой и конечной датами. А самый интересный аргумент, конечно, последний — он определяет, каким именно образом и в каких единицах будет измеряться интервал между начальной и конечной датами. Этот параметр может принимать следующие значения:

«y» разница в полных годах   
«m» в полных месяцах
«d» в полных днях
«yd» разница в днях с начала года без учета лет
«md» разница в днях без учета месяцев и лет
«ym» разница в полных месяцах без учета лет

Например:

Вычисление разницы между двумя датами функцией РАЗНДАТ

Т.е. при желании подсчитать и вывести, например, ваш стаж в виде «3 г. 4 мес. 12 дн.», необходимо ввести в ячейку следующую формулу:

=РАЗНДАТ(A1;A2;»y»)&» г. «&РАЗНДАТ(A1;A2;»ym»)&» мес. «&РАЗНДАТ(A1;A2;»md»)&» дн.»

где А1 — ячейка с датой поступления на работу, А2 — с датой увольнения.

или в английской версии Excel:


=DATEDIF(A1;A2;»y»)&» y. «&DATEDIF(A1;A2;»ym»)&» m. «&DATEDIF(A1;A2;»md»)&» d.»

Ссылки по теме

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

Другие функции

Преобразует время из текстового формата в числовой

Возвращает заданное время в числовом формате

Преобразует дату в числовом формате в год

Возвращает заданную дату в числовом формате

Преобразует дату из текстового формата в числовой

Возвращает дату в числовом формате, отстоящую на заданное число месяцев вперед или назад от начальной даты

Преобразует дату в числовом формате в день месяца

Преобразует дату в числовом формате в день недели

Вычисляет количество дней между двумя датами для 360-дневного года

Возвращает количество дней между двумя датами

Возвращает долю года, которую составляет количество дней между начальной и конечной датами

Возвращает дату в числовом формате для последнего дня месяца, отстоящего вперед или назад на заданное число месяцев

Преобразует дату в числовом формате в месяцы

Преобразует дату в числовом формате в минуты

Преобразует дату в числовом формате в число, которое указывает, на какую неделю года приходится дата

Возвращает номер недели по ISO для заданной даты

Возвращает дату в числовом формате, отстоящую вперед или назад на заданное количество рабочих дней

Возвращает числовое значение даты, предшествующей заданному количеству рабочих дней или следующей за ними, руководствуясь при этом параметрами, указывающими выходные дни и их количество

Возвращает текущую дату в числовом формате

Преобразует дату в числовом формате в секунды

Возвращает текущую дату и время в числовом формате

Преобразует дату в числовом формате в часы

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

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

  • Редакция Кодкампа

17 авг. 2022 г.
читать 1 мин


Мы можем использовать функцию DATEDIF() для вычисления разницы между двумя датами в Excel.

Эта функция использует следующий синтаксис:

=DATEDIF(Начальная_Дата, Конечная_Дата, Метрика)

куда:

  • Start_Date: дата начала
  • End_Date: Дата окончания
  • Метрика: метрика для расчета. Варианты включают:
  • «д»: дни
  • «м»: Месяцы
  • «г»: годы

Важно отметить, что эта функция не появится автоматически в Excel, пока вы полностью не введете =РАЗНДАТ( в одну из ячеек.

В следующих примерах показано, как использовать эту функцию для вычисления разницы между двумя датами в Excel.

Пример 1: разница в днях

На следующем изображении показано, как рассчитать разницу (в днях) между двумя датами:

Разница дат в днях в Excel

Это говорит нам о том, что между 01.01.2018 и 01.02.2021 1127 полных дней.

Пример 2: разница в месяцах

На следующем изображении показано, как рассчитать разницу (в месяцах) между двумя датами:

Разница дат в месяцах в Excel

Пример 3: Разница в годах

На следующем изображении показано, как рассчитать разницу (в годах) между двумя датами:

Разница в годах между двумя датами в Excel

Пример 4: Разница в годах и месяцах

На следующем рисунке показано, как рассчитать разницу (в годах и месяцах) между двумя датами:

Разница в годах и месяцах между двумя датами в Excel

Вы можете найти больше руководств по Excel на этой странице .

Написано

Редакция Кодкампа

Замечательно! Вы успешно подписались.

Добро пожаловать обратно! Вы успешно вошли

Вы успешно подписались на кодкамп.

Срок действия вашей ссылки истек.

Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.

Успех! Ваша платежная информация обновлена.

Ваша платежная информация не была обновлена.

СИНТАКСИС:


=РАЗНДАТ(нач_дата;кон_дата;код)

АРГУМЕНТЫ:
1.

нач_дата — начальная дата.
2. кон_дата — конечная дата.
3. код — текстовое значение, которое указывает в каких единицах необходимо вернуть разницу дат.

    Список допустимых значений аргумента:

Код
Результат вычисления функции
«y» Число полных лет в заданном промежутке
«m»
Число полных месяцев в заданном промежутке
«d»
Число дней в заданном промежутке
«md» Разность между номером дня в дате аргумента кон_дата и номером дня в дате аргумента нач_дата, при этом значения месяца и года в заданных датах игнорируются
«ym»
Разность между номером месяца в дате аргумента кон_дата и номером дня в дате аргумента нач_дата, при этом значения номеров дня и года в заданных датах игнорируются
«yd»
Разность в днях между датами аргументов кон_дата и нач_дата, при этом значения года в заданных датах игнорируются


КОММЕНТАРИИ:
нет

ОГРАНИЧЕНИЯ:
Если аргумент кон_дата соответствует более ранней дате чем аргумент нач_дата функция вернёт значение ошибки #ЧИСЛО.
Если какой-либо из аргументов нач_дата или кон_дата не являются допустимой датой, то функция вернёт значение ошибки #ЗНАЧ.

ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ:


ФОРМУЛЫ МАССИВА:
Функция работает в формулах массива

ЭТОГО НЕТ В ОФИЦИАЛЬНОЙ СПРАВКЕ EXCEL:

Собственно говоря, самой функции РАЗНДАТ нет в справке Excel. Более того нет её и в мастере функций. И при наборе вручную первых букв названия функции Excel тоже не покажет подсказку в выпадающем списке. Объясняется это довольно просто. Эта функция изначально не является функцией Excel. Она всего лишь поддерживается Excel для совместимости с другими системами электронных таблиц.  В Excel эта функция попала из электронных таблиц Lotus 1-2-3.

В КАКОЙ ВЕРСИИ EXCEL РАБОТАЕТ:
В любой версии.

Посмотреть другие функции этой категории.

Skip to content

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

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

Вам интересно, сколько составляет разница в днях, месяцах и годах между двумя датами? Может быть, вам нужно знать количество дней между сегодняшним днем ​​и какой-либо точкой в прошлом или будущем?

Какова бы ни была ваша проблема, один из приведенных ниже примеров в Excel наверняка подскажет вам решение.

  • Простой калькулятор дней
  • Как рассчитать разницу в днях?
  • Расчёт разницы между датами при помощи функции РАЗНДАТ (DATEDIF)
  • Разница в днях
  • В полных месяцах
  • В полных годах
  • В полных месяцах без учёта лет
  • Разница в днях без учета месяцев и лет
  • В днях без учёта лет
  • Как посчитать разницу в днях, месяцах и годах
  • Подсчёт с помощью функции ДНИ
  • Как рассчитать количество дней между сегодняшним днем и другой датой
  • Мастер даты и времени — простой способ создавать формулы разницы дат в Excel

Простой калькулятор дней.

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

Хотите узнать формулу, которая рассчитала эти результаты? Это так же просто, как =B3-B2:)

Обратите внимание, что нужно четко знать, что именно вы хотите подсчитать: «дни включительно» или «дни между».

Кроме того, прежде чем выполнять операции с датой-временем, нужно установить правильный формат в ячейках вашей таблицы. Чаще всего Эксель сам подбирает нужный формат представления данных, но все же лучше подстраховаться.

Для этого выберите клетку или диапазон ячеек с числами, которые вы хотите представить как даты, и нажмите комбинацию клавиш Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Числовые форматы» в пункте «Дата», выберите подходящий для вас внешний вид в разделе «Тип» и нажмите кнопку «ОК».

Далее вы найдете подробное объяснение того, как работает эта формула, и узнаете несколько других способов вычисления.

Как рассчитать разницу в днях?

Самый простой способ рассчитать дни между датами в Эксель — вычесть одну из другой:

= Более новая — Более старая

Как мы уже сказали ранее, чтобы узнать, сколько времени пройдет в периоде между ячейками В3 и B2, используйте следующую формулу:

=B3 — В2

где В2 — более ранняя, а B3 — более.

Результатом подсчета является целое число, которое представляет количество дней внутри временного интервала.

Однако, будьте здесь внимательны: при подобном подсчете отработанных дней в том случае, если человек работал и в первый, и в последний день, то 1 день будет «потерян». Добавьте в вашу формулу +1 день.

Как работает эта формула?

Как вы, вероятно, знаете, Microsoft Excel хранит даты в виде порядковых номеров, начинающихся с 1 января 1900 года, которому соответствует номер 1. В этой системе 2 января 1900 года сохраняется как число 2, 3 января 1900 года как 3 и так далее. Таким образом, вычитая одну дату из другой, вы фактически вычитаете целые числа, представляющие их.

В нашем примере формула в C5 на самом деле вычитает 43892 (числовое значение 2 марта 2020г.) из 43900 (числовое значение 10 марта 2020г.) и возвращает результат 8 дней.

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

Рассчитать разницу между датами в Excel с помощью РАЗНДАТ (DATEDIF).

Другой способ — как в Экселе посчитать дни в заданном временном интервале — использование функции РАЗНДАТ (в английском варианте – DATEDIF), которая специально разработана для расчета разности во времени и представления её в различных единицах: дни, месяцы и годы.

А вот ее синтаксис:

= РАЗНДАТ(дата_нач; дата_кон; аргумент)

где

дата_нач и дата_кон — две временных отметки, разницу между которыми необходимо рассчитать,

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

  • Y Число полных лет.
  • M Число полных месяцев.
  • D Число дней.
  • MD Разница в днях (значения месяца и года не учитываются).
  • YM Разница в месяцах (значения дня и года не учитываются).
  • YD Разница в днях, игнорируя значения года.

Чтобы получить количество дней между двумя датами, укажите момент  начала в первом аргументе, срок окончания во втором, и «d» в последнем третьем:

РАЗНДАТ(дата_нач; дата_кон; «d»)

DATEDIF (start_date, end_date, «d»)

Примечание. РАЗНДАТ (DATEDIF) — недокументированная функция, то есть ее нет в мастере функций в Excel. Вы не сможете ее вставить при помощи кнопки fx или меню Вставка — Функция.   Чтобы создать формулу РАЗНДАТ в таблице Экселя, вам нужно вписать ее название руками и ввести все аргументы вручную, подсказок ввода не будет.

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

  • Ссылки на ячейки. Например, следующая формула вернет количество дней между A3 и B3:

=РАЗНДАТ(A3; B3; «D»)

Текстовые выражения. Excel понимает даты в различных форматах, например, «2 март 2020», «20.03.2020», «20/03/2020», «2020/03/20», «20-03-2020», «2020-03-20» и т.д.

Вот примеры расчета количества дней во временных промежутках:

=РАЗНДАТ(«2 март 2020»; «2020-03-20»; «D»)

=РАЗНДАТ(«02-03-2020»; «20/03/2020»; «D»)

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

  • Порядковые номера. Поскольку Microsoft Excel хранит каждую дату как порядковый номер, начинающийся с 1 января 1900 года, вы можете поместить числа, соответствующие датам, непосредственно в формулу. Хотя этот метод полностью поддерживается, все же он не является надежным, поскольку нумерация различается в разных компьютерных системах (Windows и MacOS).

В системе дат 1900 года следующая формула является еще одним способом вычисления месяцев по условиям из предыдущего примера (2 марта 2020 года и 10 марта 2020 года):

=РАЗНДАТ(43900; 43892; «D»)

  • Результаты выполнения других функций. Например, следующая формула подсчитывает, срок между сегодня (18 марта 2020г.) и 9 мая 2020 года.

=РАЗНДАТ(СЕГОДНЯ(); «9-05-2020»; «D»)

В отличие от операции вычитания, функция  РАЗНДАТ может только вычесть более старую дату из более новой, но не наоборот. Если точка начала позже точки окончания, расчет выдает ошибку #ЧИСЛО!, как в строке 4 на скриншоте ниже:

1.     Разница в днях.

В нашем примере формула расчета в D3 выглядит следующим образом:

=РАЗНДАТ(A3; B3; «D»)

Обратите также внимание, что при простом вычитании дат, которые также содержат время, мы получаем в результате дробное число. Так произошло в С5 и С6. Что делать с такими дробями – поговорим чуть позже. А вот время здесь просто игнорируется. В этом вы можете убедиться в диапазоне D5:I6.

Аналогичный результат можно получить формулами:

=ЦЕЛОЕ(В2)-ЦЕЛОЕ(А2)

Время, то есть дробная часть, будет отброшено.

Кстати, если нужно подсчитать только рабочие дни, то следует использовать выражение

=ЧИСТРАБДНИ(В2;А2)

Более подробно о расчете рабочих дней читайте здесь.

2.     Разница в полных месяцах.

Обращаемся к ячейке Е3:

=РАЗНДАТ(A3;B3;»m»)

Обратите внимание, выражение вернет количество полных месяцев. В нашем примере 13 месяцев и 7 дней «округлены» ровно до 13. И последний день интервала, как мы уже говорили, эта функция не учитывает. В частности,

=РАЗНДАТ(“01.03.2020”;”31.03.2020”;»m»)

возвращает результат 0, так как последний день не включается в расчет. Вы это видите в ячейке E7. Это также будет важно при расчете стажа и отработанного времени. Учитывайте эту особенность и просто добавляйте 1 дополнительный день!

Формула может быть заменена альтернативным выражением:

= 12*(ГОД(B3)-ГОД(A3))- (МЕСЯЦ(A3)-МЕСЯЦ(B3))-(ДЕНЬ(B3)<ДЕНЬ(A3))

3.     Разница в полных годах.

Формула в ячейке F3 вернет количество полных лет:

=РАЗНДАТ(A3;B3;»Y»)

Опять же, считается только полный год, остальное отбрасывается.

Ну и альтернативный способ расчета —

= ЕСЛИ(ДАТА(ГОД(B3); МЕСЯЦ(A3);ДЕНЬ(A3))<= B3; ГОД(B3)-ГОД(A3);ГОД(B3)-ГОД(A3)-1)

4.     Разница в полных месяцах без учета лет.

Используем в I3 аргумент «YM».

=РАЗНДАТ(A3;B3;»YM»)

Второй параметр и конечная точка у нас – 10.04.2020 г. Поскольку годы мы здесь игнорируем, то год первого параметра также становится 2020. И мы теперь сравниваем 10.04.2020 и 2.03.2020г.

Результат – 1 полный месяц.

А вот если начало, предположим, будет 01.09.2015г.? Ведь ее нельзя модифицировать до 01.09.2020, поскольку тогда функция выдаст ошибку. И программа ее меняет на 01.09.2019. Результат здесь – 7 полных месяцев.

Я очень сомневаюсь, что кто-то будет проводить подобный расчет. Но он нам будет нужен, чтобы подсчитать количество дней, месяцев и лет между двумя точками. Об этом мы поговорим чуть ниже.

Ну и альтернативный расчет –

=ОСТАТ((12*(ГОД(B3)-ГОД(A3))- (МЕСЯЦ(A3)-МЕСЯЦ(B3))-(ДЕНЬ(B3)<ДЕНЬ(A3)))/12)

5.     Разница в днях без учета месяцев и лет.

Здесь немного сложнее.  Итак, в G3 пишем:

=РАЗНДАТ(A3;B3;»MD»)

Разберем, как получен результат в G3. Поскольку для нас не важны месяц и год, мы в начальной дате меняем их на текущие. То есть вместо 02.03.2019 рассматриваем 02.04.2020.  Сравниваем с 10.04.2020 и получаем 8 дней. Есть ли в таком результате смысл? Вряд ли. Поэтому и не рекомендуется применение этого аргумента как отдельного расчета.

Быть может, поэтому РАЗНДАТ и нет в списке официальных функций Excel.

6.     Разница в днях без учета лет.

То же самое, что и в предыдущем аргументе. Считаем количество суток между двумя точками без учета лет.

=РАЗНДАТ(A3;B3;»YD»)

Для начального момента — 02.03.2019 и конечного – 10.04.2020, разница в 39 дней выглядит явной ошибкой. Аналогично – между 01.09.2015 и 10.04.2020 совсем не 222 дня.

Следовательно, использование этого аргумента также не рекомендуем.

А зачем же всё это нужно? Ответ читайте в следующем разделе.

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

Чтобы подсчитать, сколько полных лет, месяцев и дней составляет разница «от» и «до» с использованием одной формулы, вы просто объединяете три функции в одно выражение:

=РАЗНДАТ(B2;B3;»Y»)&» лет, «&РАЗНДАТ(B2;B3;»YM»)&» месяцев, «&РАЗНДАТ(B2;B3;»MD»)&» дней»

Если вы не хотите отображать нулевые значения лет, месяцев и дней, то выражение можно изменить, добавив условие ЕСЛИ:

=ЕСЛИ(РАЗНДАТ(B2;B3;»Y»)>0;РАЗНДАТ(B2;B3;»Y»)&» лет «;»»)&ЕСЛИ(РАЗНДАТ(B2;B3;»YM»)>0;РАЗНДАТ(B2;B3;»YM»)&» месяцев «;»»)&ЕСЛИ(РАЗНДАТ(B2;B3;»MD»)>0;РАЗНДАТ(B2;B3;»MD»)&» дней»;»»)

Более подробно об условиях и функции ЕСЛИ читайте здесь.

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

=ЕСЛИ(РАЗНДАТ(B2;B3;»y»);РАЗНДАТ(B2;B3;»y»)&» «&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;B3;»y»)-11;100);9);10);»[<1]год;[<4]года;лет»)&» «;)& ЕСЛИ(РАЗНДАТ(B2;B3;»ym»);РАЗНДАТ(B2;B3;»ym»)&» меся»&ТЕКСТ(ОСТАТ(РАЗНДАТ(B2;B3;»ym»)-1; 11);»[<1]ц;[<4]ца;цев»)&» «;)& ЕСЛИ(РАЗНДАТ(B2;B3;»md»)>0;РАЗНДАТ(B2;B3;»md»)&» д»&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;B3;»md»)-11;100);9); 10);»[<1]ень;[<4]ня;ней»);)

Выглядит угрожающе, но зато работает.

Подсчет с помощью функции ДНИ

У пользователей Excel 2013 и 2016 есть еще один удивительно простой способ посчитать количество дней во временном интервале — функция ДНИ.

ДНИ (дата_окончания; дата_начала)

Обратите внимание, что по сравнению с РАЗНДАТ, функция ДНИ требует указания дат в обратном порядке.

Итак, наше выражение принимает вид:

=ДНИ(B3;A3)

Как и обычное вычитание, оно возвращает разницу в виде положительного или отрицательного числа, в зависимости от того, больше или меньше срок окончания, чем начало:

Думаю, в большинстве случаев можно использовать простое вычитание. Возможно, при этом только нужно будет изменить формат ячейки, убрав дробную часть.

Как рассчитать количество дней между сегодня ​​и другой датой.

Для этого расчета вы можете использовать любую из формул, описанных выше, и применить функцию СЕГОДНЯ (TODAY в английском варианте) в качестве одного из аргументов.

Чтобы рассчитать количество прошедших дней с определенного момента, то есть между прошлым и сегодняшним днем:

=СЕГОДНЯ() – Дата_в_прошлом

Для подсчета количества дней, оставшихся до наступления какого-то события, то есть между будущим временем и сегодняшним днем:

=Дата_в_будущем — СЕГОДНЯ()

В качестве примера, давайте посчитаем разницу между текущим моментом времени ​​и более ранним — в A4 (сегодня 18 марта 2020г.):

=СЕГОДНЯ()–A3

А теперь давайте выясним, сколько осталось от сегодняшнего дня (18.03.2020г.) до более позднего срока:

Узнайте, сколько дней между сегодняшним днем ​​и будущим.

Ну а если не менять выражение по сравнению с предыдущим расчетом, то просто получите отрицательное количество дней.

Мастер даты и времени — простой способ создавать формулы разницы дат в Excel

Как показано в первой части этого руководства, функция РАЗНДАТ (DATEDIF) — довольно универсальная, подходящая для самых разных целей. Однако есть один существенный недостаток — она не документирована Microsoft, то есть вы не найдете РАЗНДАТ в списке функций и не увидите всплывающих подсказок для аргументов, когда начнете вводить формулу в ячейку. Чтобы иметь возможность использовать функцию РАЗНДАТ в своих таблицах, вы должны запомнить ее синтаксис и ввести все аргументы вручную, что может занять много времени и привести к ошибкам, особенно у начинающих.

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

  1. Выберите ячейку, в которую вы хотите вставить формулу.
  2. Перейдите на вкладку Ablebits Tools  и нажмите кнопку Мастер даты и времени (Date & Time Wizard).
  3. Появится диалоговое окно мастера даты и времени, где вы переходите на вкладку «Разница (Difference)» и вводите необходимые данные для расчёта:
    • Щелкните поле Дата 1  и выберите ячейку, содержащую первую дату.
    • Щелкните поле Дата 2 и укажите ячейку со второй датой.
    • Выберите желаемую единицу или комбинацию единиц времени из раскрывающегося меню «Разница в (Difference in)» . При этом программа позволяет предварительно просмотреть результат в поле и формулу в ячейке.

Инструмент может рассчитать разницу между двумя датами в 15 форматах:

  1. Годы
  2. Месяцы
  3. Недели
  4. Дни
  5. Годы + месяцы
  6. Годы + недели
  7. Годы + дни
  8. Месяцы + недели
  9. Месяцы + дни
  10. Недели + дни
  11. Годы + месяцы + недели
  12. Годы + месяцы + дни
  13. Годы + недели + дни
  14. Месяцы + недели + дни
  15. Годы + месяцы + недели + дни
  1. Если вас устраивает то, что вы увидели, нажмите кнопку «Вставить формулу (Insert Formula)», в противном случае попробуйте другие единицы измерения.

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

К сожалению, метки даты и времени вставляются по-английски. Однако, поскольку надстройка формирует для вас не текст, а формулу расчета (что вы и видите на скриншоте), то откорректировать формулу и пользоваться в дальнейшем ее русской версией не слишком сложно.

Да и вряд ли вы самостоятельно напишете такую сложную конструкцию  😊

Для наиболее удобного представления результатов доступно еще несколько дополнительных опций:

  • Исключить годы и / или месяцы из расчетов. (Годы и / или месяцы просто будут отброшены).
  • Показывать или не показывать текстовые метки времени, такие как дни, месяцы, недели и годы .
  • Показывать или не показывать нулевые единицы (0 месяцев, например) .
  • Возвращает результаты как отрицательные значения, если Дата 1 (дата начала) больше, чем Дата 2 (дата окончания). Думаю, вы сталкивались с ситуацией, когда попытка вычесть из более ранней даты более позднюю приводила к ошибке. Здесь вы просто получите отрицательную разность.

Более подробная информация доступна здесь.

Преимущества использования мастера формул даты и времени

Помимо скорости и простоты, Мастер даты и времени предоставляет еще несколько преимуществ:

  • В отличие от обычной формулы РАЗНДАТ, для формулы, созданной мастером, не важно, какая из двух дат меньше, а какая больше. Разница всегда рассчитывается идеально, даже если Дата 1 (дата начала) больше, чем Дата 2 (дата окончания).
  • Мастер поддерживает все возможные единицы измерения (дни, недели, месяцы и годы) и позволяет вам выбирать подходящий вариант из 11 различных комбинаций этих единиц.
  • Формулы, которые мастер создает для вас, являются обычными формулами Excel, поэтому вы можете редактировать, копировать или перемещать их как обычно. Вы также можете поделиться своими таблицами с другими людьми, и все формулы останутся на своих местах, даже если у кого-то нет Ultimate Suite в их Excel.

Если вам интересно протестировать этот калькулятор дат, а также открыть для себя еще 60 надстроек для упрощения работы и экономии времени в Excel, то можете загрузить пробную версию  Ultimate Suite. Если вам понравились инструменты и вы решили купить лицензию, не пропустите это специальное предложение для читателей нашего сайта.

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

Также рекомендуем статьи о работе с датами:

Как перевести время в число В статье рассмотрены различные способы преобразования времени в десятичное число в Excel. Вы найдете множество формул для преобразования времени в часы, минуты или секунды. Поскольку Microsoft Excel использует числовую систему для работы с временем, вы можете…
Формат времени в Excel Вы узнаете об особенностях формата времени Excel, как записать его в часах, минутах или секундах, как перевести в число или текст, а также о том, как добавить время с помощью…
Как вывести месяц из даты На примерах мы покажем, как получить месяц из даты в таблицах Excel, преобразовать число в его название и наоборот, а также многое другое. Думаю, вы уже знаете, что дата в…
Как быстро вставить сегодняшнюю дату в Excel? Это руководство показывает различные способы ввода дат в Excel. Узнайте, как вставить сегодняшнюю дату и время в виде статической метки времени или динамических значений, как автоматически заполнять столбец или строку…
Количество рабочих дней между двумя датами в Excel Довольно распространенная задача: определить количество рабочих дней в период между двумя датами – это частный случай расчета числа дней, который мы уже рассматривали ранее. Тем не менее, в Excel для…

Понравилась статья? Поделить с друзьями:
  • Date value to date in excel
  • Date to string in excel vba
  • Date to milliseconds excel
  • Date to date calculation in excel
  • Date setting in excel