Формула на Excel: Вземете дни, месеци и години между датите -

Съдържание

Обща формула

=DATEDIF(start,end,"y") &" years,"&DATEDIF(start,end,"ym") &" months," &DATEDIF(start,end,"md") &" days"

Обобщение

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

В показания пример формулата в D6 е:

=DATEDIF(B6,C6,"y") &" years,"&DATEDIF(B6,C6,"ym") &" months," &DATEDIF(B6,C6,"md") &" days"

където началните дати са в колона Б, а крайните дати са в колона В.

Обяснение

Функцията DATEDIF е предназначена за изчисляване на разликата между датите в години, месеци и дни. Налични са няколко вариации (например време в месеци, време в месеци, игнорирайки дни и години и т.н.) и те се задават от аргумента "единица" във функцията. Вижте тази страница във функцията DATEDIF за пълен списък с налични единици.

В показания пример изчисляваме години, месеци и дни поотделно, след което „залепваме“ резултатите заедно с конкатенацията. За да получим цели години, използваме:

DATEDIF(B6,C6,"y")&" years,"

За да получим цели месеци, използваме:

DATEDIF(B6,C6,"ym")&" months,"

И ние изчисляваме дните с:

DATEDIF(B6,C6,"md")&" days"

Останалата част от формулата е просто необходимият текст, обединен заедно с оператора за конкатенация (&).

Без нулеви стойности

За да предотвратите извеждането на дни, месеци или години с нулеви стойности, можете да обвиете всяка функция DATEDIF вътре в IF, както е показано тук (добавени са прекъсвания на редовете за четливост):

= IF(DATEDIF(B6,C6,"y"), DATEDIF(B6,C6,"y")&"yr ","")& IF(DATEDIF(B6,C6,"ym"), DATEDIF(B6,C6,"ym")&" mo ","")& IF(DATEDIF(B6,C6,"md"), DATEDIF(B6,C6,"md") &" dy","")

За да се предотврати появата на допълнителни запетаи в крайния резултат, запетаите са заменени с интервали. Използването на оригиналната формула DATEDIF като „логически тест“ вътре в IF работи, защото IF третира всеки ненулев резултат като истина.

Добри връзки

Подробна статия за DATEDIF (Ablebits)

Интересни статии...