Verstrichene Tage als Jahre, Monate und Tage (Microsoft Excel)
Wenn Sie Excel zum Verfolgen von Informationen zu Projekten verwenden, möchten Sie möglicherweise die Dauer eines bestimmten Projekts in Jahren, Monaten und Tagen ermitteln. Wenn Sie das Start- und Enddatum für jedes Projekt haben, können Sie die DATEDIF-Arbeitsblattfunktion verwenden, um die Informationen auf die gewünschte Weise zurückzugeben.
Angenommen, Sie haben ein Startdatum in Zelle E7 und das Enddatum in Zelle F7. Mit dieser sehr einfachen Verwendung von DATEDIF können Sie die Differenz zwischen den beiden Daten berechnen:
=DATEDIF(E7,F7,"d")
Diese Funktion gibt die Anzahl der Tage zwischen den beiden Daten zurück, sofern das Datum in E7 kleiner oder gleich dem Datum in F7 ist. Das dritte Argument, „d“, veranlasst DATEDIF, sein Ergebnis in Tagen zurückzugeben. Sie können auch Monate („m“) und Jahre (‚y „) angeben. Für die Zwecke dieses Beispiels gibt es jedoch mehrere andere Argumente, die besonders hilfreich sind: Monate ohne Jahre (“ ym „), Tage ohne Jahre ( „yd“) und Tage ohne Monate und Jahre („md“).
Mit diesen verschiedenen Argumenten können Sie eine Formel erstellen, die eine Antwort zurückgibt, die die verstrichenen Tage als Jahre, Monate angibt und Tage.
(Aufgrund der Länge der Formeln in diesem Tipp habe ich sie in separate Zeilen unterteilt, um sie leichter lesbar zu machen. Dies ist jedoch eine einzelne Formel und sollte als eingegeben werden solche in Excel.)
=DATEDIF(E7,F7,"y") & " years, " & DATEDIF(E7,F7,"ym") & " months, " & DATEDIF(E7,F7,"md") & " days "
Beachten Sie, dass diese Formel immer mehrere Einheiten zurückgibt, wie in Jahren, Monaten und Tagen. Für diejenigen, die sein wollen Die folgende Formel reicht aus, um grammatikalisch korrekt zu sein und singuläre Einheiten bereitzustellen, wenn dies erforderlich ist:
=IF(DATEDIF(E7,F7,"y")=1,DATEDIF(E7,F7,"y")&" year, ", DATEDIF(E7,F7,"y")&" years, ")&IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym") &" month, ",DATEDIF(E7,F7,"ym") &" months, ")&IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md") &" day",DATEDIF(E7,F7,"md")&" days")
Diese Arbeit ks in allen Fällen, außer wenn entweder Jahre, Monate oder Tage Null sind. Um die richtige Einheit bei Null loszuwerden, ist eine noch längere Formel erforderlich:
=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1, DATEDIF(E7,F7,"y")&" year, ",DATEDIF(E7,F7,"y")&" years, ")) &IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym")&" month, ",DATEDIF(E7,F7,"ym")&" months, ")) &IF(DATEDIF(E7,F7,"md")=0,"",IF(DATEDIF(E7,F7,"md")=0, DATEDIF(E7,F7,"md")&" day ",DATEDIF(E7,F7,"md")&" days"))
Diese Formel wird ziemlich lang, gibt aber nur die Einheiten zurück, für die es einen Wert gibt. Anstatt „0 Jahre, 2 Monate, 1 Tag“ zurückzugeben, wird „2 Monate, 1 Tag“ zurückgegeben.
Auch dies ist keine perfekte Formel, da in einigen Situationen, in denen dies nicht gerechtfertigt ist, die Kommas zwischen den Einträgen angezeigt werden. Die folgende Megaformel sollte Pluralformen und Kommas korrigieren und Null-Einträge entfernen.
=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1, DATEDIF(E7,F7,"y")&"year",DATEDIF(E7,F7,"y")&"years")) &IF(AND(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0),", ","") &IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym")&" month",DATEDIF(E7,F7,"ym")&" months")) &IF(AND(OR(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0), DATEDIF(E7,F7,"md")<>0),", ","")&IF(DATEDIF(E7,F7,"md")=0,"", IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md")&" day", DATEDIF(E7,F7,"md")&" days"))
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (2184) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: