Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 SharePoint Foundation 2010 Excel 2010 SharePoint Server 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Windows SharePoint Services 3.0 Еще…Меньше
Вычисляет количество дней, месяцев или лет между двумя датами.
Предупреждение: Функция РАЗНДАТ предлагается в Excel для поддержки старых книг Lotus 1-2-3. В некоторых ситуациях она может выдавать неправильные результаты. Дополнительные сведения см. в разделе «Известные проблемы» в этой статье.
Синтаксис
РАЗНДАТ(нач_дата,кон_дата,единица)
Аргумент |
Описание |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
start_date Обязательный |
Дата, которая представляет первую или даты начала заданного периода. Даты можно вводить в виде текстовых строк в кавычках (например, «30.1.2001»), в виде порядковых номеров (например, 36921 представляет 30 января 2001 г., если используется система дат 1900) или как результаты вычисления других формул или функций (например ДАТАЗНАЧ(«30.1.2001»)). |
||||||||||||||
end_date Обязательный |
Дата окончания периода. |
||||||||||||||
Единица |
Тип возвращаемой информации, где:
|
Замечания
-
Даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 447 дней.
-
Функция РАЗНДАТ полезна в формулах расчета возраста.
-
Если онtart_date больше, чем end_date,результат будет #NUM!.
Примеры
нач_дата |
кон_дата |
Формула |
Описание (результат) |
1.1.2001 |
1.1.2003 |
=РАЗНДАТ(нач_дата,кон_дата,»Y») |
Два полных года в периоде (2). |
1.6.2001 |
15.8.2002 |
=РАЗНДАТ(нач_дата,кон_дата,»D») |
440 дней между 1 июня 2001 г. и 15 августа 2002 г. (440) |
1.6.2001 |
15.8.2002 |
=РАЗНДАТ(нач_дата,кон_дата,»YD») |
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 (по алфавиту)
Функции Excel (по категориям)
Рекомендации, позволяющие избежать появления неработающих формул
Нужна дополнительная помощь?
В excel нет функции разндат
СИНТАКСИС:
=РАЗНДАТ( нач_дата ; кон_дата ; код )
АРГУМЕНТЫ:
1. нач_дата — начальная дата.
2. кон_дата — конечная дата .
3. код — текстовое значение, которое указывает в каких единицах необходимо вернуть разницу дат.
Список допустимых значений аргумента:
ОГРАНИЧЕНИЯ:
Если аргумент кон_дата соответствует более ранней дате чем аргумент нач_дата функция вернёт значение ошибки #ЧИСЛО .
Если какой-либо из аргументов нач_дата или кон_дата не являются допустимой датой, то функция вернёт значение ошибки #ЗНАЧ.
ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ:
ФОРМУЛЫ МАССИВА:
Функция работает в формулах массива
ЭТОГО НЕТ В ОФИЦИАЛЬНОЙ СПРАВКЕ EXCEL:
Собственно говоря, самой функции РАЗНДАТ нет в справке Excel. Более того нет её и в мастере функций. И при наборе вручную первых букв названия функции Excel тоже не покажет подсказку в выпадающем списке. Объясняется это довольно просто. Эта функция изначально не является функцией Excel. Она всего лишь поддерживается Excel для совместимости с другими системами электронных таблиц. В Excel эта функция попала из э лектронных таблиц Lotus 1-2-3.
Пример функции РАЗНДАТ для расчета времени между датами в Excel
Функция РАЗНДАТ позволяет выяснить, сколько полных дней, месяцев или лет прошло между двумя указанными датами. Таким образом можно легко посчитать в Excel: возраст от даты рождения, трудовой стаж, сроки беременности и др. Примеры расчетов точных сроков, возрастов и продолжительности до окончания периодов времени с помощью функции РАЗНДАТ. Как правильно считать разницу между двумя датами при 365 и 366 днях в году?
Примеры использования функции РАЗНДАТ
Пример 1. Требуется вычислить, зная дату рождения работника, сколько полных лет, месяцев и дней ему исполнилось на момент сегодняшней даты.
Используя в качестве аргументов саму дату рождения и функцию СЕГОДНЯ(), а также значения «Y», «M» и «D» для единицы, получим следующий набор формул:
Таким образом мы получили точный возраст в годах, месяцах и днях от даты рождения.
Как точно посчитать сколько прошло времени: лет, месяцев и дней?
Пример 2. В документе записаны даты рождения сотрудников. Требуется выяснить, сколько лет, месяцев и дней исполнилось каждому из них на момент сегодняшнего дня.
Используя уже знакомую формулу =РАЗНДАТ(B2;СЕГОДНЯ();»Y») для ячейки С2 получим количество полных лет возраста каждого из работников. Протянем эту формулу на весь столбец ниже.
Модифицировав формулу, использованную выше, заменяем значение единицы с «Y» на «YM». Итоговый вид формулы: =РАЗНДАТ(B2;СЕГОДНЯ();»YM»). Таким образом, мы получим на выходе количество полных месяцев возраста, не учитывая прошедшие полные года. Протянем формулу на весь столбец ниже.
В конце нам понадобятся и дни, не вошедшие в месяц. Снова заменяем значение единицы с «YM» на «YD» и получим формулу следующего вида, в которой на выходе будет число дней: =РАЗНДАТ(B2;СЕГОДНЯ();»YD»).
Такое решение можно элегантно улучшить, если использовать функцию СПЕЦПИТЬ() и вызвать окошко аргументов, приведя функцию в следующий вид: =СЦЕПИТЬ(C2;» лет «;D2;» месяцев «;E2;» дня(-ей)»)
Как посчитать сроки окончания действия договора в Excel
Пример 3. В документе записаны даты заключения договоров сотрудников компании. По умолчанию договор заключается на 1 год. Требуется выяснить, сколько дней осталось до момента окончания трудового договора у каждого из сотрудников, чтобы подготовить новые экземпляры для продления договоров.
С помощью функции РАЗНДАТ определим, сколько дней прошло с момента заключения трудового договора. В новом столбце для ячейки С2 используем формулу: =РАЗНДАТ(B2;СЕГОДНЯ();»d») и протянем ее на весь столбец ниже.
Подсчитаем количество оставшихся дней до окончания трудового договора каждого из сотрудников. Для этого в новом столбце вычитаем от количества дней в году значения из столбца С, используя формулу:
Сначала мы определяем количество дней во году по дате (365 или 366) по формуле ЕСЛИ(ОСТАТ(ГОД(B2);4);365;366), а после вычитаем, чтобы узнать сколько осталось -C2.
Для удобства можно добавить еще одну колонку, в которой с помощью условий указать замечание для продления договора, если осталось меньше 10 дней до его окончания. Для ячейки E2 используем формулу:
10;»Действует»;ЕСЛИ(D2
В данной формуле используется функция ЕСЛИ с несколькими условиями. Если до конца срока больше 10-ти суток тогда формула возвращает значение «Действует», а если меньше 10-то тогда одно из условий:
- Если меньше 10-ти суток, но больше чем 0 – значение «Заканчивается».
- Если меньше чем 0, тогда «Просрочен».
Особенности использования функции РАЗНДАТ
- — нач_дата : дата, от которой будет вестись расчет;
- — кон_дата : дата, до которой будет вестись расчет;
- — единица : аргумент, указывающий на величину, в которой будет производиться расчет.
Примечание: аргументы нач_дата и кон_дата могут принимать как числовое значение, так и быть результатом какого-либо вычисления, производимого вне ячеек (например, функции ДАТА(), функции СЕГОДНЯ()).
Примечание: аргумент единица может принимать одно из шести значений:
- — «Y»: в результате подсчетов будет выведено количество полных лет между начальными аргументами;
- — “M”: в результате подсчетов будет выведено количество полных месяцев между начальными аргументами;
- — «D»: в результате подсчетов будет выведено количество полных дней между начальными аргументами;
- — «MD»: в результате подсчетов будет выведено количество дней между датами, не учитывая месяца, прошедшие между датами. Например, при вычислении разницы между 1 сентября 2018 года и 21 ноября 2018 года (что составляет 2 месяца и 20 дней) со значением “MD” будет возвращено значение 20, т.к. прошедшие 2 полных месяца не будут учтены;
- — «YM»: в результате подсчетов будет выведено количество месяцев между датами, не учитывая года, прошедшие между датами. Например, при вычислении разницы между 1 сентября 2010 года и 1 ноября 2018 года (что составляет 8 лет и 2 месяца) со значением “YM” будет возвращено значение 2, т.к. прошедшие 8 полных лет не будут учтены;
- — «YD «: в результате подсчетов будет выведено количество суток между датами, не учитывая года, прошедшие между датами. Например, при вычислении разницы между 1 сентября 2010 года и 2 сентября 2018 года (что составляет 8 лет и 1 день) со значением “YD” будет возвращено значение 1, т.к. прошедшие 8 полных лет не будут учтены.
Функция DATEDIF (РАЗНДАТ) в Excel. Как использовать?
Функция DATEDIF (РАЗНДАТ) в 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. Важно знать аргументы функции и как ими пользоваться;
- Данные даты в функции могут быть введены как:
– дата указанная в виде текста в кавычках;
– число;
– как результат вычисления, формулы, функции.
Примеры использования функции РАЗНДАТ в Excel
Пример №1. Подсчет количества лет между двумя датами
На примере выше, формула возвращает количество лет между двумя датами. Например, функция вернет значение “27” если вы захотите посчитать количество полных лет между двумя датами 19 июня 1989 года и 26 марта 2017 года. Система подсчитывает количество полных лет и игнорирует количество месяцев и дней между датами.
Пример №2. Подсчет количества месяцев между двумя датами
На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество полных месяцев между двумя датами – 19 июня 1989 года и 26 марта 2017 года.
Функция возвращает значение “333”, что является количеством полных месяцев между датами указанными выше.
Пример №3. Подсчет количества дней между двумя датами
На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество дней между двумя датами. Например, функция возвращает значение “10142” дня между двумя датами – 19 июня 1989 года и 26 марта 2017 года.
Если вы хотите посчитать количество дней между двумя датами, исключая количество лет, которые уже завершены, вам нужно использовать аргумент “YD” в качестве третьего (пример на рисунке ниже):
В приведенном выше примере он возвращает значение “280”, то есть число дней между днями, исключая 27 полных лет.
Если вы хотите посчитать количество дней между двумя датами, исключая количество полных лет и месяцев, используйте атрибут “MD” в качестве третьего аргумента (как показано на рис. ниже):
На примере выше функция возвращает значение “7” означающие количество дней между двумя днями “19” и “26” число, исключая значения лет и месяцев.
РАЗНДАТ (функция РАЗНДАТ)
Вычисляет количество дней, месяцев или лет между двумя датами.
Предупреждение: Функция РАЗНДАТ предлагается в 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 sбольше, чемnd_datee, результат будет #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 User Voice.
Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).
Вопрос по Excel
Помогите сделать формулу в Excel для вычисления стажа роботы такого вида :
[ссылка появится после проверки модератором] (закинул на радикал)
Если ссылку не закинут то таблица такого рода.
_________А__________|__B__|
| Дата приема на роботу | Стаж |
___________________________
|______ **.**.****______ | __?__ |
надо формулу для «стажа» чтобы почитало время от приема до сегодняшнего дня.
Нюанс в том, что Вы не найдете эту функцию в списке Мастера функций, нажав кнопку fx — она является недокументированной возможностью Excel (точнее говоря, найти описание этой функции и ее аргументов можно только в полной версии англоязычной справки, поскольку на самом деле она оставлена для совместимости со старыми версиями Excel и Lotus 1-2-3). Поэтому постораюсь изложить это по-русски здесь. Итак.. .
Синтаксис функции следующий:
РАЗНДАТ (начальная_дата; конечная_дата; способ_измерения)
Самый интересный аргумент, конечно, последний. Он определяет, каким именно образом и в каких единицах будет измеряться интервал между начальной и конечной датами. Этот параметр может принимать следующие значения:
«y»разница в полных годах
«m»в полных месяцах
«d»в полных днях
«yd»разница в днях с начала года без учета лет
«md»разница в днях без учета месяцев и лет
«ym»разница в полных месяцах без учета лет
Т. е. при желании подсчитать и вывести, например, ваш стаж в виде «3 г. 4 мес. 12 дн. «, необходимо ввести в ячейку следующую формулу:
или в английской версии Excel:
=DATEDIF(A1,A2,»y») & » y. » & DATEDIF(A1A2,»ym») & » m. » & DATEDIF(A1,A2,»md») & » d.»
Функция РАЗНДАТ() — Вычисление разности двух дат в днях, месяцах, годах в MS EXCEL
Смотрите также – дата вЕсли для аргумента «День» есть) — не г. 1 мес.
параметр может принимать или x86-64 и их количество. числовом формате. месяцы и получить дней разницы без лет. Использовать ееРезультат2:
Результат: возраста) имеется криваяПример3: дня, а неДля вычислений длительности временных числовом формате. Аргумент задать большее число
Синтаксис функции:
могу.
25 дней следующие значения:
компьютерах под управлениемТДАТАРАЗНДАТ только количество дней учета месяцев и не рекомендуется по0, т.к. сравниваются11 (месяцев), т.к. формула для вычисления
начальная_дата 28.02.2008, конечная_дата |
1 день). Избегайте |
интервалов удобней всего |
должен быть введен |
(чем количество дней |
Для работы с датами |
»дата3″ и «дата |
»y» |
Windows RT с |
Возвращает текущую дату иВычисляет количество дней, месяцев |
между двумя датами. |
лет: причинам, изложенным в конечная дата 28.03.2009 |
предыдущем пункте. |
и модифицированная начальная 01.03.2009 и модифицированная |
то лишние дни разделе с функциями г. 3 мес.»m» об этих различиях. формате. двумя датами. Эта=РАЗНДАТ(A1;A2;»md»)При применении новой функцииРезультат, возвращаемый формулой =РАЗНДАТ(A2;B2;»yd»)
дата 28. начальная дата 01.04.=(ГОД(ТДАТА())-ГОД(A3))*12+МЕСЯЦ(ТДАТА())-МЕСЯЦ(A3)2 (дня), т.к. формула приведена ниже. DATEDIF(). вычисления других формул. перейдут на следующий определена категория «Дата
1. Разница в днях («d»)
25 днейв полных месяцахДля вычислений длительностей интервалов
СЕКУНДЫ функция полезна в
Введите «ym» третьим аргументом, необходимо учитывать, что
зависит от версии0320092008Если вместо функции ТДАТА() - 2008 год -»yd»Если Вам требуется рассчитатьПример использования функции ГОД: месяц. Например, указав и время». РассмотримКак сделать так,»d» дат в Excel
Преобразует дату в числовом формулах расчета возраста. чтобы отбросить годы
разница в днях EXCEL.
(год и месяц(год начальной даты текущая дата использовать
високосныйразница в днях без стаж (страховой) вВозвращает месяц как целое
для декабря 32 наиболее распространенные функции чтобы подсчитать вв полных днях есть функция формате в секунды.ДАТАЗНАЧ и получить только будет одинаковой дляФормула может быть заменена начальной даты заменяется заменяется годом конечной дату 31.10.1961, аЭта формула может быть
учета лет годах, месяцах, днях, число (от 1 дня, получим в в этой категории. Excel эти ответы:»yd»
2. Разница в полных месяцах («m»)
РАЗНДАТВРЕМЯПреобразует дату из текстового
число месяцев между нескольких начальных дат альтернативным выражением:
годом и месяцем даты за вычетом
в А3 ввести 01.11.1962, заменена простым выражением
ВНИМАНИЕ! Функция для то, пожалуйста, воспользуйтесь
до 12) для результате 1 января.Программа Excel «воспринимает» дату»1 г. 1разница в днях с, в английской версии
Возвращает заданное время в формата в числовой. двумя датами.
(см. рисунок выше,=ЕСЛИ(ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2))>B2;
конечной даты) 1 года, т.к.
то формула вернет
=ЦЕЛОЕ(B2)-ЦЕЛОЕ(A2). Функция ЦЕЛОЕ() некоторых версий EXCEL расчетами выполненными в заданной в числовомПример использования функции: и время как мес. 25 дней»
начала года без
- числовом формате.ДЕНЬ=DATEDIF(A1,A2,»ym») даты 28-31.01.2015). ВB2-ДАТА(ГОД(B2)-1;МЕСЯЦ(A2);ДЕНЬ(A2));Пример3: 01.04 больше чем 13, хотя фактически округляет значение до возвращает ошибочное значение. статье Расчет страхового (трудового)
3. Разница в полных годах («y»)
формате даты. АргументЗададим большее количество дней обычное число. Электронная
и «2 г. учета летDATEDIF
ВРЕМЗНАЧПреобразует дату в числовом
=РАЗНДАТ(A1;A2;»ym») остальных случаях формулыB2-ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2)))
начальная_дата 28.02.2009, конечная_дата 01.03)
прошло 12 месяцев меньшего целого и Избегайте использования функции
стажа в MS – дата месяца,
для июня:
4. Разница в полных месяцах без учета лет («ym»)
таблица преобразует подобные 3 мес. 25»md».Преобразует время из текстового
формате в деньВажное примечание: эквивалентны. Какую формулу
Найдем разницу дат 16.03.2015 01.03.2009Вся эта вакханалия нужна, и 1 день использована для того с этим аргументом. EXCEL. который необходимо отобразить,Примеры использования в качестве данные, приравнивая сутки
дней»разница в днях безНюанс в том, что
формата в числовой. месяца.Функция применять? Это решать и 30.01.15. ФункцияРезультат3: например, для подсчета (ноябрь и декабрь случая, если исходныеНиже приведено подробное описаниеФункции РАЗНДАТ() нет в справке в числовом формате.
аргументов ссылок на к единице. ВВАЖНО: учета месяцев и Вы не найдетеСЕГОДНЯДНИDATEDIF пользователю в зависимости РАЗНДАТ() с параметрами4 (дня) -
сколько полных дней, в 1961г. +
даты введены вместе
всех 6 значений EXCEL2007 и в Даты в текстовом ячейки: результате значение времени
5. Разница в днях без учета месяцев и лет («md»)
Ответ не должен лет эту функцию вВозвращает текущую дату вВозвращает количество дней между(РАЗНДАТ) возвращает количество от условия задачи. md и ym
совершенно непонятный и месяцев и лет 10 месяцев в
с временем суток аргумента Мастере функций ( формате функция обрабатываетВозвращает разницу между двумя представляет собой долю быть как результат»ym» списке Мастера функций, числовом формате. двумя датами. полных дней, месяцев
Чтобы вычислить количество дней, подсчитает, что разница НЕПРАВИЛЬНЫЙ результат. Ответ
прошло с определенной 1962г.). (РАЗНДАТ() игнорирует время,способ_измеренияSHIFT+F3 неправильно. датами. от единицы. К раздельного подсчёта (отдельноразница в полных месяцах
нажав кнопкуДЕНЬНЕДДНЕЙ360
или лет. Результаты недель или лет составляет 1 месяц должен быть =1. даты до сегодняшнегоФормула =РАЗНДАТ(A2;B2;»y») вернет количество т.е. дробную часть, а также альтернативных
), но она работает,Примеры использования функции МЕСЯЦ:
Аргументы: примеру, 12.00 – год/месяц/дни):
без учета лет
fxПреобразует дату в числовомВычисляет количество дней между
могут быть неожиданными, между двумя датами, и 14 дней. Более того, результат дня. Подробнее читайте полных лет между числа, см. статью
формул (функцию РАЗНДАТ() хотя и неВозвращает день как целоеначальная дата; это 0,5.
»1 г. 1
Например:
- она является
формате в день двумя датами на когда количество дней/месяцев используйте функцию Так ли это вычисления зависит от в одноименной статье двумя датами. Как Excel хранит
6. Разница в днях без учета лет («yd»)
можно заменить другими без огрех. число (от 1конечная дата;Значение даты электронная таблица мес. 25 дней»Т.е. при желании подсчитать
недокументированной возможностью Excel. недели. основе 360-дневного года.
второй даты меньше,DATEDIF
на самом деле?
версии EXCEL.
Сколько лет, месяцев,
Еще раз о кривизне РАЗНДАТ()
Пример1: дату и время). формулами (правда достаточноРАЗНДАТ(начальная_дата; конечная_дата; способ_измерения) до 31) длякод, обозначающий единицы подсчета преобразует в число, + «2 г. и вывести, например,
Точнее говоря, найтиНОМНЕДЕЛИДАТАМЕС чем количество дней/месяцев(РАЗНДАТ). У функцииИмея формулу, эквивалентную РАЗНДАТ(), можноВерсия EXCEL 2007 с дней прошло сначальная_дата 01.02.2007, конечная_датаПримечание громоздкими). Это сделаноАргумент начальная_дата должна быть заданной в числовом (дни, месяцы, годы равное количеству дней 3 мес. 25 ваш стаж в описание этой функцииПреобразует дату в числовомВозвращает дату в числовом первой. Смотрите примерDATEDIF понять ход вычисления. SP3: конкретной даты. 01.03.2009: Если интересуют только в файле примера). раньше аргумента конечная_дата. формате даты. Аргумент и др.). от 1 января дней» = «3 виде «3 г. и ее аргументов
формате в число, формате, отстоящую на ниже.(РАЗНДАТ) три аргумента.
Очевидно, что в
Результат – 143 дня!Формула может быть замененаРезультат: рабочие дни, тоВ файле примера значениеАргумент – дата дня,Способы измерения интервалов между 1900 года (так г. 4 мес. 4 мес. 12 можно только в
excel2.ru
Функция РАЗНДАТ в Excel
которое указывает, на заданное число месяцевРазница составляет 6 лет.Пропишите «d» в качестве нашем случае количество Больше чем дней альтернативным выражением:2 (года)
- количество рабочих дней аргумента начальная_дата помещенаспособ_измерения который нужно найти,
заданными датами:
решили разработчики) до
50 дней» дн.», необходимо ввести полной версии англоязычной какую неделю года вперед или назад
- А на самом третьего аргумента, чтобы полных месяцев между в месяце!
=ОСТАТ(C7;12)
Пример2:
- между двумя датами в ячейкеопределяет, как и в числовом формате.
для отображения результата в
заданной даты. Например,
- Ответ должен быть: в ячейку следующую справки, поскольку на приходится дата. от начальной даты. деле почти 7!
получить количество дней
датами = 1,
- Версия EXCEL 2007:В ячейкеначальная_дата 01.04.2007, конечная_дата можно посчитать поА2
в каких единицах
Чтобы вернуть порядковый номер
- днях – «d»; при преобразовании даты»1 г. 1 формулу: самом деле она
РАБДЕНЬ
КОНМЕСЯЦА
Используйте следующую формулу, между двумя датами. т.е. весь февраль.Разница между 28.02.2009 иС7 01.03.2009 формуле =ЧИСТРАБДНИ(B2;A2), а значение аргумента будет измеряться интервал дня недели дляв месяцах – «m»; 13.04.1987 получается число
мес. 25 дней»=РАЗНДАТ(A1;A2;»y»)&» г. «&РАЗНДАТ(A1;A2;»ym»)&» мес. оставлена для совместимостиВозвращает дату в числовомВозвращает дату в числовом чтобы Excel вернул
=DATEDIF(A1,A2,"d")
Для вычисления дней,
01.03.2009 – 4должна содержаться разница
Результат:
Формула =РАЗНДАТ(A2;B2;»m») вернет количество
конечная_дата – в
office-guru.ru
Функции даты и времени (справка)
между начальной и конечной указанной даты, можнов годах – «y»; 31880. То есть
+ «2 г. «&РАЗНДАТ(A1;A2;»md»)&» дн.» со старыми версиями формате, отстоящую вперед формате для последнего 7 лет.=РАЗНДАТ(A1;A2;»d») функция находит количество дня! в полных месяцах1 (год) полных месяцев между
ячейке |
датами. Этот аргумент |
применить функцию ДЕНЬНЕД: |
в месяцах без учета от 1.01.1900 прошло |
3 мес. 25 |
где А1 — ячейка Excel и Lotus или назад на дня месяца, отстоящего=YEAR(A2)-YEAR(A1) |
Примечание: |
дней в предыдущем месяцеПричем в EXCEL 2003 |
(см. п.2). |
Подробнее читайте в статье двумя датами.В2 |
может принимать следующие |
По умолчанию функция считает лет – «ym»; |
31 880 дней. |
дней» = «3 с датой поступления 1-2-3. Однако, несмотря |
заданное количество рабочих |
вперед или назад=ГОД(A2)-ГОД(A1)Формула относительно конечной даты, с SP3 формула |
Формула =РАЗНДАТ(A2;B2;»md») вернет количество |
Полный возраст илиПример1:. значения: воскресенье первым днемв днях без учета |
Этот принцип лежит в |
г. 5 мес. на работу, А2 |
на то, что |
дней. на заданное числоУрок подготовлен для Вас |
=A2-A1 |
т.е. 28 (конечная возвращает верный результат |
дней между двумя |
стаж.начальная_дата 01.02.2007, конечная_дата |
Формула =РАЗНДАТ(A2;B2;»d») вернет простую |
Значение недели. месяцев и лет |
основе расчетов временных |
19 дней» — с датой эту функцию неРАБДЕНЬ.МЕЖД месяцев. командой сайта office-guru.ru |
даёт тот же |
дата принадлежит марту, 1 день. Для датами без учета |
Формула может быть заменена |
01.03.2007 разницу в днях |
Описание |
Для отображения порядкового номера – «md»; |
данных. Чтобы найти |
Abram pupkin увольнения. |
получится вставить стандартным |
Возвращает числовое значение даты,ЧАС |
Источник: http://www.excel-easy.com/examples/datedif.html |
результат. предыдущий месяц - значений 31.12.2009 и |
месяцев и лет. |
альтернативным выражением:Результат: между двумя датами.»d» недели для указанной |
в днях без учета |
количество дней между: =РАЗНДАТ (СУММ (E15:E17);СУММили в английской версии способом через окно предшествующей заданному количеству |
Преобразует дату в числовом |
Перевел: Антон АндроновВведите «m», как третий февраль, а в 01.02.2010 результат вообще Использовать функцию РАЗНДАТ()=ЕСЛИ(ДАТА(ГОД(B2);МЕСЯЦ(A2);ДЕНЬ(A2)) ГОД(B2)-ГОД(A2);ГОД(B2)-ГОД(A2)-1)1 (месяц)Пример1: |
разница в днях |
даты применяется функция лет – «yd». |
двумя датами, достаточно |
(F15:F17);»y»)&» г. «&РАЗНДАТ Excel:Вставка — Функция (Insert рабочих дней или |
формате в часы.Автор: Антон Андронов аргумент, чтобы получить 2015г. в феврале отрицательный (-2 дня)! с этим аргументомФормула =РАЗНДАТ(A2;B2;»ym») вернет количествоПример2:начальная_дата 25.02.2007, конечная_дата 26.02.2007»m» НОМНЕДЕЛИ:В некоторых версиях Excel
support.office.com
Вычисление возраста или стажа функцией РАЗНДАТ (DATEDIF)
от более позднего (СУММ (E15:E17);СУММ (F15:F17);»ym»)&»=DATEDIF(A1;A2;»y»)&» y. «&DATEDIF(A1;A2;»ym»)&» m. — Function) следующей за ними,НОМНЕДЕЛИ.ISOЧтобы просмотреть более подробные количество месяцев между
было 28 дней).Не советую использовать формулу не рекомендуется (см. полных месяцев междуначальная_дата 01.03.2007, конечная_дата 31.03.2007Результат: разница в полных месяцахДата 24.05.2015 приходится на при использовании последних временного периода отнять мес. «&РАЗНДАТ (СУММ «&DATEDIF(A1;A2;»md»)&» d.», ее можно вручную руководствуясь при этомВозвращает номер недели по сведения о функции, двумя датами. После этого отнимает с вышеуказанным значением примеры ниже). двумя датами безРезультат:1 (день).»y» 22 неделю в двух аргументов («md», более ранний. (E15:E17);СУММ (F15:F17);»md»)+1&» днейЕсть в Excel функция:
вписать в ячейку
параметрами, указывающими выходные
ISO для заданной щелкните ее название=DATEDIF(A1,A2,»m») день начала и аргумента. Формула можетПример1: учета лет (см.0Этот пример показыват, чторазница в полных годах году. Неделя начинается «yd») функция может «=РАЗНДАТ (F31;G31;»y»)&» г.
с клавиатуры - | дни и их |
даты. | в первом столбце. |
=РАЗНДАТ(A1;A2;»m») | прибавляет день конечной |
быть заменена альтернативным | начальная_дата 01.02.2007, конечная_дата примеры ниже).При расчете стажа, считается, |
при подсчете стажа | »ym» с воскресенья (по выдать ошибочное значение. |
Построение значение даты, составляя | Полосатый жираф алик «&РАЗНДАТ (F31;G31;»ym»)&» мес. |
и она сработает!
количество.МИНУТЫПримечание:Введите «y» третьим аргументом, даты =ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B6;-1);0))-ДЕНЬ(A6)+ДЕНЬ(B6), т.е. выражением: 06.03.2009Пример1:
что сотрудник отработавший необходимо использовать функцию
разница в полных месяцах умолчанию). Лучше применять альтернативные его из отдельных: Что такое «значение1″
«&РАЗНДАТ (F31;G31;»md»)+1&» днейСинтаксис функции следующий:
ГОДПреобразует дату в числовом
planetaexcel.ru
Как в Excel 2016 заставить правильно рассчитывать дату?
Маркер версии обозначает версию
чтобы получить количество 28-30+16=14. На наш=ЕСЛИ(ДЕНЬ(A2)>ДЕНЬ(B2);Результат1:
начальная_дата 01.02.2007, конечная_дата все дни месяца РАЗНДАТ() с осторожностью. без учета летВ качестве второго аргумента
формулы. элементов-чисел.
и «значение2» =
«=РАЗНДАТ(Начальная_дата; Конечная_дата; Способ_измерения)
Преобразует дату в числовом
формате в минуты. Excel, в которой лет между двумя взгляд, между датами
ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B2;-1);0))-ДЕНЬ(A2)+ДЕНЬ(B2);5 (дней), т.к. 01.03.2009 — отработал 1
Очевидно, что если»md» указана цифра 2.
Примеры действия функции РАЗНДАТ:Синтаксис: год; месяц, день. «ответ» ?Она позволяет рассчитатьС первыми двумя аргументами
формате в год.
МЕСЯЦ она впервые появилась. датами. все же 1 полный
ДЕНЬ(B2)-ДЕНЬ(A2)) сравниваются конечная датаРезультат: полный месяц. Функция РАЗНДАТ() так сотрудник работал 25разница в днях без Поэтому формула считает,
В версии Excel 2007
Все аргументы обязательные. ИхЧто такое «подсчитать кол-во лет + все более-менее понятноДОЛЯГОДАПреобразует дату в числовом В более ранних
=DATEDIF(A1,A2,»y») месяц и всеДанная формула лишь эквивалетное 06.03.2009 и модифицированная1 (месяц), т.к. не считает! и 26 февраля,
учета месяцев и что неделя начинается данной функции нет можно задать числами
в Excel эти мес. + дней — это ячейки
Возвращает долю года, которую формате в месяцы. версиях эта функция
=РАЗНДАТ(A1;A2;»y») дни марта, т.е (в большинстве случаев) начальная дата 01. сравниваются конечная датаПример3: то отработал он лет
Функции для работы с датами в Excel: примеры использования
с понедельника (второй в справочнике, но или ссылками на ответы»? и вывести в со стартовой и составляет количество дней
Как Excel обрабатывает время
ЧИСТРАБДНИ отсутствует. Например, маркерПропишите «yd» в качестве 16 дней, а выражение для РАЗНДАТ()032009 01.03.2009 и модифицированнаяначальная_дата 01.02.2007, конечная_дата 2 дня, аВНИМАНИЕ! Функция для день недели).
она работает. Хотя ячейки с соответствующимиТы знаешь, что виде: конечной датами. А между начальной иВозвращает количество полных рабочих версии 2013 означает, третьего аргумента, чтобы не 14! Эта с параметром md.(год и месяц
начальная дата 01.02. 01.03.2009 не 1. То некоторых версий EXCELСкачать примеры функций для результаты лучше проверять, числовыми данными: для в месяцах РАЗНОЕ
1 г. 1
Пример функции ДАТА
самый интересный аргумент, конечной датами. дней между двумя
что данная функция
отбросить годы и ошибка проявляется, когда О корректности этой начальной даты заменяется2009Результат: же относится и возвращает ошибочное значение, работы с датами т.к. возможны огрехи. года – от количество дней?
мес. 25 дней. конечно, последний -Важно: датами. доступна в выпуске получить только количество в предыдущем месяце относительно формуле читайте в годом и месяцем(год начальной даты
25 месяцев
к расчету полных если день начальной
Для указания текущей датыВозвращает год как целое 1900 до 9999;
Функция РАЗНДАТ в Excel
Вот я знаюЕсть задача:
он определяет, каким
- Вычисляемые результаты формул и
- ЧИСТРАБДНИ.МЕЖД
- Excel 2013 и всех дней между двумя конечной даты, дней
разделе «Еще раз конечной даты, т.к.
- заменяется годом конечнойФормула может быть заменена
- месяцев (см. ниже).
- даты больше дня
- используется функция СЕГОДНЯ число (от 1900
- для месяца – (несколько) Excel, знаю,»значение1″ и «значение2″
- именно образом и некоторые функции листа
Возвращает количество полных рабочих последующих версиях. датами. меньше, чем дней о кривизне РАЗНДАТ()» 01 меньше чем даты, т.к. 01.02
альтернативным выражением:
Пример2: конечной даты (например, (не имеет аргументов). до 9999), который от 1 до что такое «дата»
Функция ГОД в Excel
= «ответ» в каких единицах Excel могут несколько дней в интервалеФункция=DATEDIF(A1,A2,»yd») начальной даты. Как ниже. 06) меньше чем 01.03)=12*(ГОД(B2)-ГОД(A2))-(МЕСЯЦ(A2)-МЕСЯЦ(B2))-(ДЕНЬ(B2)начальная_дата 01.02.2007, конечная_дата
в EXCEL 2007
Функция МЕСЯЦ в Excel: пример
Чтобы отобразить текущее соответствует заданной дате. 12; для дня в Excel. НоПример: будет измеряться интервал отличаться на компьютерах между двумя датами,Описание=РАЗНДАТ(A1;A2;»yd») выйти из этой
Формула =РАЗНДАТ(A2;B2;»yd») вернет количество
Примеры функций ДЕНЬ, ДЕНЬНЕД и НОМНЕДЕЛИ в Excel
Пример2:Пример2:Внимание 01.03.2007 при сравнении дат время и дату, В структуре функции – от 1
понять ход твоих»дата1″ и «дата между начальной и под управлением Windows
руководствуясь параметрами, указывающимиДАТАВведите «md», как третий
ситуации? дней между двумяначальная_дата 28.02.2007, конечная_датаначальная_дата 01.04.2007, конечная_дата
: В справке MS EXCELРезультат: 28.02.2009 и 01.03.2009 применяется функция ТДАТА только один аргумент
до 31. мыслей (если они 2″ = 1 конечной датами. Этот с архитектурой x86 выходные дни и
Возвращает заданную дату в аргумент, чтобы отбросить
Модифицируем формулу для расчета датами без учета 28.03.2009 01.03.2009 (см. раздел Вычисление28 (дней) результат будет 4
exceltable.com
().
На сайте есть пример расчета даты, однако у меня почему-то ничего не работает. Он не отменяет функцию автоматически и отображает ошибку, если вы ее укажете. Как с этим бороться?
В конце концов, мне нужно посчитать количество недель и количество месяцев между двумя датами.
рис. 1
рис. 2
Отвечать
Очевидно нет. Никто не будет добавлять новые функции в устаревший офис.
ИМЕЕТ!!!))
Не могли бы вы объяснить мне, как это возможно?
Офис, разница в создании файла несколько месяцев !!! Слева я пытаюсь сделать это сейчас, справа я делал это раньше! см рис. 1
рис. 1
Все! Понял!
Если start_date больше, чем end_date, возникает ошибка # ЧИСЛО!
так должно быть так: 01.01.2018 (start_date) 10.01.2018 (end_date).
Если наоборот, то это: 01.10.2018 (start_date) 01.01.2018 (end_date) — ошибка # ЧИСЛО!
Источник: https://answers.microsoft.com/ru-ru/msoffice/forum/all/not/4d04b6cf-2a06-470c-a1f1-d5fe69ccbda7
Секретная функция в Excel.
Всем привет.
Есть в Microsoft Excel пасхальное яйцо в виде функции. Эта функция вычисляет разность между двумя датами.
Синтаксис:
=РАЗНДАТ(нач_дата;кон_дата;код)
или
=DATEDIF(нач_дата;кон_дата;код)
Аргументы:
1. нач_дата — начальная дата.
2. кон_дата — конечная дата.
3. код — текстовое значение, которое указывает в каких единицах необходимо вернуть разницу дат.
Список допустимых значений аргумента:
«y» — число полных лет в заданном промежутке
«m»- число полных месяцев в заданном промежутке
«d» — число дней в заданном промежутке
«md»- разность между номером дня в дате аргумента кон_дата и номером дня в дате аргумента нач_дата, при этом значения месяца и года в заданных датах игнорируются
«ym» — разность между номером месяца в дате аргумента кон_дата и номером дня в дате аргумента нач_дата, при этом значения номеров дня и года в заданных датах игнорируются
«yd» — разность в днях между датами аргументов кон_дата и нач_дата, при этом значения года в заданных датах игнорируются.
Ограничения:
Если аргумент кон_дата соответствует более ранней дате чем аргумент нач_дата функция вернёт значение ошибки #ЧИСЛО.
Если какой-либо из аргументов нач_дата или кон_дата не являются допустимой датой, то функция вернёт значение ошибки #ЗНАЧ.
Пример:
Почему же она как пасхальное яйцо? Потому что самой функции РАЗНДАТ нет в справке Excel. Более того нет её и в мастере функций. И при наборе вручную первых букв названия функции Excel тоже не покажет подсказку в выпадающем списке. Но объясняется это довольно просто. Эта функция изначально не являлась функцией Excel. Она всего лишь поддерживается Excel для совместимости с другими системами электронных таблиц. В Excel эта функция попала из электронных таблиц Lotus 1-2-3.
Но эта функция работает до сих пор, и в Excel 2016.)
Популярное
-
Всем привет. В прошлом году я вам показывал фокус с защитой листа в MS Excel 2010. Но как оказалось в великом и могучем MS Excel сюр…
-
Всем привет. Не перестаю удивляться нештатным ситуациям когда Windows перестает нормально реагировать на действия пользователя только …
-
Всем привет. Одним из существенных недостатков Hyper-V перед другими гипервизорами (например, ESXi или Proxmox) являются отсутствие полноцен…
-
Всем привет. Так уж получилось что опять меня спросили про настройку передачи событий с одного хоста (источник) на сервер (коллектор)….
-
Всем привет. Есть такая бяка как кеширование паролей в Wndows 10. Ну всем хороша фича для пользователя, только вот мешает она когда ему …
Для вычислений длительностей интервалов дат в 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().
Если Вам требуется рассчитать стаж (страховой) в годах, месяцах, днях, то, пожалуйста, воспользуйтесь расчетами выполненными в статье
Расчет страхового (трудового) стажа в MS EXCEL
.
Функции
РАЗНДАТ(
)
нет в справке EXCEL2007 и в
Мастере функций
(
SHIFT
+
F
3
), но она работает, хотя и не без огрех.
Синтаксис функции:
РАЗНДАТ(начальная_дата; конечная_дата; способ_измерения)
Аргумент
начальная_дата
должна быть раньше аргумента
конечная_дата
.
Аргумент
способ_измерения
определяет, как и в каких единицах будет измеряться интервал между начальной и конечной датами. Этот аргумент может принимать следующие значения:
|
|
«d» |
разница в днях |
«m» |
разница в полных месяцах |
«y» |
разница в полных годах |
«ym» |
разница в полных месяцах без учета лет |
«md» |
разница в днях без учета месяцев и лет ВНИМАНИЕ! Функция для некоторых версий EXCEL возвращает ошибочное значение, если день начальной даты больше дня конечной даты (например, в EXCEL 2007 при сравнении дат 28.02.2009 и 01.03.2009 результат будет 4 дня, а не 1 день). Избегайте использования функции с этим аргументом. Альтернативная формула приведена ниже. |
«yd» |
разница в днях без учета лет ВНИМАНИЕ! Функция для некоторых версий 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)<ДЕНЬ(A2))
Внимание
: В справке MS EXCEL (см. раздел Вычисление возраста) имеется кривая формула для вычисления количества месяце между 2-мя датами:
=(ГОД(ТДАТА())-ГОД(A3))*12+МЕСЯЦ(ТДАТА())-МЕСЯЦ(A3)
Если вместо функции ТДАТА() — текущая дата использовать дату 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))<=B2; ГОД(B2)-ГОД(A2);ГОД(B2)-ГОД(A2)-1)
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! Эта ошибка проявляется, когда в предыдущем месяце относительно конечной даты, дней меньше, чем дней начальной даты. Как выйти из этой ситуации?
Модифицируем формулу для расчета дней разницы без учета месяцев и лет:
=
ЕСЛИ(ДЕНЬ(A18)>ДЕНЬ(B18);ЕСЛИ((ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B18;-1);0))-ДЕНЬ(A18))<0;ДЕНЬ(B18);ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B18;-1);0))-ДЕНЬ(A18)+ДЕНЬ(B18));ДЕНЬ(B18)-ДЕНЬ(A18))
При применении новой функции необходимо учитывать, что разница в днях будет одинаковой для нескольких начальных дат (см. рисунок выше, даты 28-31.01.2015). В остальных случаях формулы эквивалентны. Какую формулу применять? Это решать пользователю в зависимости от условия задачи.
Содержание
- Расчет количества дней
- Способ 1: простое вычисление
- Способ 2: функция РАЗНДАТ
- Способ 3: вычисление количеств рабочих дней
- Вопросы и ответы
Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.
Расчет количества дней
Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.
- Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.
- Открывается окно форматирования. Если открытие произошло не во вкладке «Число», то следует в неё перейти. В блоке параметров «Числовые форматы» выставляем переключатель в позицию «Дата». В правой части окна выбираем тот тип данных, с которым собираемся работать. После этого, чтобы закрепить изменения, жмем на кнопку «OK».
Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.
Способ 1: простое вычисление
Проще всего вычислить разность дней между датами с помощью обычной формулы.
- Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.
- Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.
Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».
- В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).
- Чтобы увидеть, сколько времени прошло между этими датами, жмем на кнопку Enter. Результат отобразится в ячейке, которая отформатирована под общий формат.
Способ 2: функция РАЗНДАТ
Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:
=РАЗНДАТ(начальная_дата;конечная_дата;единица)
«Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:
- «y» — полные года;
- «m» — полные месяцы;
- «d» — дни;
- «YM» — разница в месяцах;
- «MD» — разница в днях (месяцы и годы не учитываются);
- «YD» — разница в днях (годы не учитываются).
Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.
Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.
- Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.
- Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
Способ 3: вычисление количеств рабочих дней
В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:
=ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники])
В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».
Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».
- Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».
- Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».
- Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.
Урок: Мастер функций в Excel
Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.