Verwenden eines zweistelligen Wochentags in einem Datumsformat (Microsoft Excel)
Die Arbeit von Raymond erfordert, dass er Daten formatiert, damit sie in einem seiner Meinung nach eher seltsamen Format angezeigt werden. Wenn eine Zelle beispielsweise ein Datum vom 20.10.19 enthält, muss es als „SU 10/20“ ohne Anführungszeichen angezeigt werden. (SU ist eine zweistellige Darstellung des Wochentags, in diesem Fall des Sonntags.) Raymond fragt sich, ob es eine Möglichkeit gibt, dies als benutzerdefiniertes Format zu tun.
Es gibt keine Möglichkeit, dies genau mit einem benutzerdefinierten Format zu tun. Der Grund dafür ist, dass es in benutzerdefinierten Formaten keinen Code gibt, mit dem Sie einen zweistelligen Wochentag erstellen können. Das nächste, was in einem benutzerdefinierten Format durchgeführt werden kann, ist für einen dreistelligen Wochentag:
ddd m/d
Auch das ist ein bisschen anders, weil es den dreistelligen Wochentag nicht in Großbuchstaben macht.
Das führt uns dazu, eine Formel zu verwenden, um das formatierte Datum zu ermitteln.
Wenn Sie das Datum in Zelle A1 haben, können Sie die folgende Formel verwenden:
=LEFT(UPPER(TEXT(A1,"ddd")), 2) & " " & TEXT(A1,"m/d")
Hierbei wird mit der TEXT-Funktion zunächst der dreistellige Wochentag zurückgegeben, der mithilfe der UPPER-Formel in Großbuchstaben umgewandelt wird. Die LEFT-Funktion wird dann verwendet, um die ersten beiden Zeichen dieses Wochentags zu erfassen, die dann zur Kombination aus Monat und Tag hinzugefügt werden. Dies gibt genau das zurück, was Raymond wollte.
Der Nachteil bei der Verwendung dieses Ansatzes besteht darin, dass das von der Formel zurückgegebene Datum Text ist. Es ist kein tatsächliches Datum. Wenn wir ein benutzerdefiniertes Format verwenden könnten, wäre der zugrunde liegende Datumswert unverändert geblieben.
Dies wäre jedoch bei einer solchen ungeraden Datumsformatierung der Fall.
Aufgrund dieses potenziellen Nachteils möchten Sie möglicherweise die tatsächlichen Daten als Daten beibehalten, auch wenn sie sich in einer ausgeblendeten Spalte oder einem ausgeblendeten Arbeitsblatt befinden.
Falls gewünscht, können Sie auch ein Makro erstellen, das eine Zeichenfolge mit dem formatierten Datum zurückgibt. Hier ist eine einfache benutzerdefinierte Funktion:
Function FmtDate(d As Date) As String Dim s As String s = UCase(Left(WeekdayName(Weekday(d)), 2)) s = s & " " & Format(d, "m/d") FmtDate = s End Sub
Sie können die Funktion dann in Ihrem Arbeitsblatt folgendermaßen verwenden:
=FmtDate(A1)
Dies setzt voraus, dass sich das Datum in A1 befindet und die Funktion eine Datumszeichenfolge zurückgibt, die wie von Raymond gewünscht formatiert ist.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (13704) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365.