Обобщение
Функцията Excel DATEDIF връща разликата между две стойности за дата в години, месеци или дни. Функцията DATEDIF (Date + Dif) е функция за "съвместимост", която идва от Lotus 1-2-3. По неизвестни причини той е документиран само в Excel 2000, но можете да го използвате във формулите си във всички версии на Excel оттогава.
Забележка: Excel няма да ви помогне да попълните аргументите за DATEDIF като другите функции, но ще работи, когато е конфигуриран правилно.
Предназначение
Вземете дни, месеци или години между две датиВърната стойност
Число, представящо времето между две датиСинтаксис
= DATEDIF (начална дата, крайна дата, единица)Аргументи
- start_date - Начална дата във формат на сериен номер на датата на Excel.
- end_date - Крайна дата във формат на сериен номер на датата на Excel.
- единица - Единицата за време, която да се използва (години, месеци или дни).
Версия
Excel 2003Бележки за употреба
Функцията DATEDIF (Date + Dif) е функция за "съвместимост", която идва от Lotus 1-2-3. По неизвестни причини той е документиран само в Excel 2000, но оттогава работи във всички версии на Excel. Както казва Чип Пиърсън: DATEDIF се третира като пиян братовчед от семейство Формула. Excel знае, че живее щастлив и полезен живот, но няма да говори за това в учтив разговор.
Единици за време
Функцията DATEDIF може да изчисли времето между начална дата и крайна дата в години, месеци или дни. Единицата за време се посочва с аргумента за единица , който се предоставя като текст. Таблицата по-долу обобщава наличните единични стойности и резултата за всяка. Единиците за време могат да бъдат дадени с главни или малки букви (т.е. "ym" е еквивалентно на "YM").
Мерна единица | Резултат |
---|---|
"у" | Разлика в пълните години |
"м" | Разлика в цели месеци |
"д" | Разлика в дни |
"md" | Разлика в дни, пренебрегвайки месеци и години |
"ym" | Разлика в месеци, игнорирайки години |
"я" | Разлика в дни, игнорирайки години |
Основна употреба
В примера, показан по-горе, колона B съдържа датата 1 януари 2016 г., а колона C съдържа датата 1 март 2018 г. В колона E:
E5=DATEDIF(B5,C5,"y") // returns 2 E6=DATEDIF(B6,C6,"m") // returns 26 E7=DATEDIF(B7,C7,"d")// returns 790
Разлика в дни
Функцията DATEDIF може да изчисли разликата между датите в дни по три различни начина: (1) общо дни, (2) дни, игнориращи години и (3) дни, игнориращи месеци и години. Снимката по-долу показва и трите метода, с начална дата 15 юни 2015 г. и крайна дата 15 септември 2021 г.:
Формулите, използвани за тези изчисления, са както следва:
=DATEDIF(B5,C5,"d") // total days =DATEDIF(B6,C6,"yd") // days ignoring years =DATEDIF(B7,C7,"md") // days ignoring months and years
Имайте предвид, че тъй като датите в Excel са само големи серийни номера, първата формула не се нуждае от DATEDIF и може да бъде записана просто като крайна дата минус началната дата:
=C5-B5 // end-start = total days
Разлика в месеци
Функцията DATEDIF може да изчисли разликата между датите в месеци по два различни начина: (1) общо пълни месеци, (2) пълни месеци, като се игнорират години. Снимката по-долу показва и двата метода, с начална дата 15 юни 2015 г. и крайна дата 15 септември 2021 г .:
=DATEDIF(B5,C5,"m") // complete months =DATEDIF(B6,C6,"ym") // complete months ignoring years
Разлика в години
Функцията DATEDIF може да изчисли разликата между датите в цели години само с един метод, показан по-долу:
=DATEDIF(B5,C5,"y") // complete years =DATEDIF(B6,C6,"y") // complete years =YEARFRAC(B7,C7) // fractional years with YEARFRAC
Забележете в ред 6 разликата е почти 6 години, но не съвсем. Тъй като DATEDIF изчислява само цели години, резултатът все още е 5. В ред 7 използваме функцията YEARFRAC, за да изчислим по-точен резултат.
Бележки
- Excel няма да ви помогне да попълните функцията DATEDIF както другите функции.
- DATEDIF с грешка #NUM, ако началната дата е по-голяма от крайната дата. Ако работите с по-сложна формула, при която началните и крайните дати могат да бъдат неизвестни или извън границите, можете да прихванете грешката с функцията IFERROR или да използвате MIN и MAX за сортиране на дати.
- Microsoft препоръчва да не се използва стойността "MD" за единица, защото тя "може да доведе до отрицателно число, нула или неточен резултат".