Da Ihre Eingabedaten Datumsangaben vor 1900 enthalten, wird es etwas schwieriger. Der einfachste Weg, um damit umzugehen, besteht darin, ausschließlich mit den Textdarstellungen der Datumsangaben zu arbeiten.
Wenn Sie nicht das vollständige Datum benötigen, sondern nur das Jahr, geben Sie diese Grundformel in eine beliebige Zelle in der Zeile ein 2:2
:
=IFERROR(VALUE(LEFT(A2,4)),VALUE(RIGHT(A2,4)))
Für das vollständige Datum ist die Formel etwas komplizierter:
=IF(MID(A2,3,1)="-",A2,CHOOSE((LEN(A2)-4)/3+1,"01-01","01"&MID(A2,5,3),RIGHT(A2,2)&MID(A2,5,3))&"-"&LEFT(A2,4))
Erläuterung:
Die verifizierte Version der vollständigen Datumsformel lautet wie folgt:
= IF( MID(A2,3,1)="-", A2, CHOOSE( (LEN(A2)-4)/3+1, "01-01", "01"&MID(A2,5,3), RIGHT(A2,2)&MID(A2,5,3) ) &"-"&LEFT(A2,4) )
Das ist ziemlich einfach. Die einzige etwas knifflige Sache ist das erste Argument der CHOOSE()
Funktion (LEN(A2)-4)/3+1
,. Dies ordnet die Länge der eingegebenen Datumszeichenfolgen 1-basierten Indizes zu, dh → → .[yyyy, yyyy-mm, yyyy-mm-dd, dd-mm-yyyy]
[4, 7, 10, 10]
[1, 2, 3, 3]
Anmerkungen:
- Die verettete Formel funktioniert tatsächlich, wenn sie eingegeben wird.
Vorsichtsmaßnahmen:
- Die Formeln setzen voraus, dass alle Eingabedaten als Text gespeichert werden. (Die Formeln können leicht geändert werden, um Datumsangaben zu speichern, die als Seriennummern gespeichert sind.)
- Wenn die Eingabedaten führende / nachgestellte Leerzeichen enthalten, funktionieren die obigen Formeln möglicherweise nicht ordnungsgemäß. Sie werden definitiv nicht mit Leerzeichen (oder anderen Zeichen) an anderen Stellen in den Datumszeichenfolgen arbeiten. Wenn Sie alle
A2
s in den Formeln durchTRIM(A2)
oder besser noch durch ersetzenSUBSTITUTE(A2," ","")
, wird dieses Problem gelöst.