
Hintergrund: Die Daten stammen aus einer Datenbank mit Daten im europäischen Format (TT/MM/JJJJ). Die Spalte „Erstellt“ (Spalte A) hat auch einen Zeitstempel im 24-Stunden-Format. Daneben befindet sich die Spalte „Identifiziert“ (Spalte B) mit nur einem Datum, das möglicherweise nicht mit dem „Erstellungsdatum“ übereinstimmt.
Meine Ausgabe muss eine neue Spalte „Erstellt“ mit nur dem Datum (ohne Zeitstempel) im US-Format sein, und ich weiß, wie das geht. Ich verwende LEFT, um nur das europäische Datum in einer neuen Spalte zu erfassen. (Spalte C) Dann verwende ich in einer anderen neuen Spalte =Date(value(right(A2,4)),value(mid(A2,4,2)),value(left(a2,2))), um das Datum in das US-Format (MM/TT/JJJJ) umzuordnen. (Spalte D)
Alles klar mit dem oben Gesagten. Hier wird es schwierig, ich muss die gleiche Datumskonvertierung mit den „Identifizierten“ Daten in einer eigenen Spalte (Spalte E) durchführen. Nicht jede Datenzeile hat ein „Identifiziertes“ Datum.
In Fällen, in denen kein „Identifiziertes“ Datum vorhanden ist, möchte ich, dass meine Datumsformel den Fehler erkennt (der als #VALUE angezeigt wird) und das konvertierte „Erstellt“-Datum kopiert.
Ich habe versucht, mit IF-, OR- und IsError-Anweisungen herumzuspielen, aber scheinbar gelingt mir keine gültige Anweisung.
Für Vorschläge bin ich sehr dankbar. Ich habe auch versucht, eine weitere Spalte (F) mit =If(iserror) zu erstellen, um meine konvertierte Spalte „Identifiziert“ zu lesen und, falls ein Fehler vorliegt, das konvertierte Datum „Erstellt“ abzurufen, und falls kein Fehler vorliegt, das konvertierte Datum „Identifiziert“, aber das gibt mir eine leere Zelle.
Ich habe eine einfache Beispiel-Excel-Tabelle erstellt, sehe aber keine Option, wo ich die Excel-Datei hochladen/anhängen kann.
Antwort1
Formel für Zelle E2
...
Alte Methode mit IF
=IF(ISBLANK(B2),D2,DATE(VALUE(RIGHT(B2,4)),VALUE(MID(B2,4,2)),VALUE(LEFT(B2,2))))
Moderne Methode mit IFERROR
=IFERROR(DATE(VALUE(RIGHT(B2,4)),VALUE(MID(B2,4,2)),VALUE(LEFT(B2,2))),D2)
Wenn B2
leer ist, gibt die DATE
von Ihnen verwendete Funktion E2
einen Fehler aus.
Bei der alten Methode wird mithilfe einer IF
Funktion geprüft, ob die Zelle B2
leer ist. Ist dies der Fall, wird als Ergebnis einfach der Inhalt der Zelle zurückgegeben D2
. Schlägt der Test fehl, IF
berechnet die Funktion mithilfe der Funktion einfach das erforderliche Ergebnis DATE
.
Bei der modernen Methode geht es nicht darum, was den DATE
Fehler verursacht, sondern nur darum, ob ein Fehler vorliegt oder nicht. Wenn kein Fehler vorliegt, verwendet die Funktion IFERROR das erste Argument – die DATE
Funktion – und wenn ein Fehler vorliegt, verwendet sie das zweite Argument – D2
als Ergebnis.
Der moderne Weg ist vorzuziehen. Andere Fehler, wie z. B. B2
das Einfügen von zufälligem Text, führen zu Problemen mit der DATE
Funktion in E2. Die IF
Version wird mit solchen Fehlern nicht richtig umgehen, während IFERROR
sie es tut.