Excel-formel: Få dager, måneder og år mellom datoene

Generisk formel

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

Sammendrag

For å beregne og vise tiden mellom datoer i dager, måneder og år, kan du bruke en formel basert på DATEDIF-funksjonen.

I eksemplet vist er formelen i D6:

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

der startdatoer er i kolonne B, og sluttdatoer er i kolonne C.

Forklaring

DATEDIF-funksjonen er designet for å beregne forskjellen mellom datoer i år, måneder og dager. Det er flere variasjoner tilgjengelig (f.eks. Tid i måneder, tid i måneder som ignorerer dager og år osv.), Og disse er satt av "enhets" -argumentet i funksjonen. Se denne siden i DATEDIF-funksjonen for en fullstendig liste over tilgjengelige enheter.

I eksemplet som vises, beregner vi år, måneder og dager hver for seg, og deretter "limer" vi resultatene sammen med sammenføyning. For å få hele år bruker vi:

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

For å få hele måneder bruker vi:

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

Og vi beregner dager med:

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

Resten av formelen er ganske enkelt den nødvendige teksten koblet sammen med sammenkoblingsoperatoren (&).

Uten nullverdier

For å forhindre utdata fra dager, måneder eller år med nullverdier, kan du pakke hver DATEDIF-funksjon inne i IF, som vist her (linjeskift lagt til for lesbarhet):

= 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","")

For å forhindre at ekstra komma vises i det endelige resultatet, har komma blitt erstattet av mellomrom. Å bruke den opprinnelige DATEDIF-formelen som "logisk test" i IF fungerer fordi IF behandler ethvert resultat som ikke er null som sant.

Gode ​​lenker

Detaljert artikkel om DATEDIF (Ablebits)

Interessante artikler...