2009-09-15 23:04:12 +0000 2009-09-15 23:04:12 +0000
33
33
Advertisement

Wie bekomme ich den Tagesnamen in eine Zelle in Excel?

Advertisement

Wie bekomme ich bei einem Datum den Wochentag (z.B. “Montag”) in eine Zelle in Excel?

Advertisement
Advertisement

Antworten (9)

54
54
54
2009-09-15 23:06:40 +0000

Einfaches Beispiel:

A1 Zelle: 1/8/2009 B1 Zelle: =TEXT(WOCHENTAG(A1), “dddd”)

Dies wird für das angegebene Datum den entsprechenden Tag ausgeben.

Ist dies das Gewünschte?

19
19
19
2009-11-02 10:43:55 +0000

Die oben gegebene Antwort funktioniert nur zufällig, weil Excel denkt, dass der 1.1.1900 ein Sonntag war* und Excel standardmäßig den Sonntag als ersten Wochentag für die Wochentagsfunktion verwendet.

Was Sie bei dieser Methode tatsächlich berechnen, ist der Wochentag als Zahl und die anschließende Formatierung als Tag, basierend auf dieser als Datum interpretierten Zahl. Wenn Ihr Datum z. B. 1/2/2003 ist und Sie die Funktion WEEKDAY verwenden, ergibt dies 7 (=Samstag). Wenn Sie dies dann als “dddd” formatieren, erhalten Sie tatsächlich den Tagesnamen des 7. Tages in Excel seit seiner “Epoche”, d.h. den 1.7.1900, der zufällig ein Samstag ist*. Diese Formel wird kaputt gehen, wenn jemand sie öffnet, der die Option ausgewählt hat, das 1904-basierte Datumssystem zu verwenden, da der 1.1.1904 kein Sonntag, sondern ein Freitag war. (ja, ich weiß, dass kaum jemand das verwendet, aber Sie wollen doch nicht eine Lösung bauen, die sich darauf verlässt, oder?)

Sie können die Formel kürzer, schneller und robuster machen, indem Sie einfach

=TEXT(A1,"dddd")

verwenden. Sie könnten natürlich auch einfach die Datumszellen selbst mit einem benutzerdefinierten Format formatieren, wie bereits vorgeschlagen, je nachdem, ob Sie dies wirklich in einer separaten Spalte benötigen oder nicht. Ich verwende oft Datumsformate wie

ddd dd mmm yyyy

, um z. B. Sat 01 Feb 2003 auszugeben, so dass das Datum eindeutig ist, aber auch der Name des Wochentags angezeigt wird.

Die Verwendung einer zweiten Spalte und einer TEXT-Funktion ist unerlässlich, wenn Sie den Wochentag explizit irgendwo in einem Seriendruck verwenden möchten (z. B.), ähnlich für Dinge wie Währungen und so weiter in Excel > Word-Mischung übergibt den tatsächlichen zugrunde liegenden gespeicherten Wert und nicht die auf dem Bildschirm formatierte Version, so dass Word unabhängig vom Zellenformat eine schreckliche Zahl sieht. Ein echtes Textfeld wird so übergeben, wie es ist, und wird in Word korrekt angezeigt.

*Eigentlich ist es ein Montag, aber Excel wurde so geschrieben, dass es mit den falschen Daten in Lotus 1-2-3 übereinstimmt, das 1900 als Schaltjahr behandelte, obwohl es das nicht ist.

7
Advertisement
7
7
2009-09-15 23:16:11 +0000
Advertisement

Eine andere Möglichkeit, je nachdem, was Sie anschließend mit dem Datum machen wollen, ist, das Format der Zelle auf Benutzerdefiniert zu setzen: dddd

5
5
5
2012-12-08 18:02:03 +0000

Ich habe festgestellt, dass das Verschachteln von IF-Anweisungen umständlich sein kann, aber es funktioniert. Wenn Sie sich jedoch ein wenig Tipparbeit ersparen möchten, können Sie dies versuchen:

=CHOOSE(WEEKDAY(A2), "Sun","Mon","Tue","Wed","Thur","Fri","Sat")

Oder, wenn Sie vollständige Namen benötigen:

=CHOOSE(WEEKDAY(A2), "Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

In diesem Beispiel kann “A2” jede Zelle (oder Formel) sein, die das betreffende Datum enthält. Zum Beispiel:

=CHOOSE(WEEKDAY(TODAY()), "Sun","Mon","Tue","Wed","Thur","Fri","Sat")

würde das Drei-Buchstaben-Kürzel für das heutige Datum ausgeben.

1
Advertisement
1
1
2014-06-18 05:49:40 +0000
Advertisement

A1 Zelle: 1/8/2009 B1-Zelle: =A1 dann ctrl+1 drücken (Zelle formatieren) Registerkarte “Zahl” wählen, auf “Benutzerdefiniert” klicken und dann “DDDD” in das Textfeld “Typ” eingeben

1
1
1
2013-10-10 15:52:11 +0000

Sie können die Antwort auch lokalisieren, indem Sie [$nnn] vor dem Format verwenden (der benutzerdefinierte Code lautet also: [$nnn]dddd;@). ändern Sie nnn mit dem richtigen Sprachcode. ich habe die Liste nicht, aber irgendwie ist der englische Code -409 (und mein lokaler ist -421).

Ich denke, Sie können mit dem Zahlenformat experimentieren, das Sprachfeld ändern und es dann wieder in das benutzerdefinierte Format ändern.

0
Advertisement
0
0
2016-06-29 04:04:28 +0000
Advertisement

Zellen formatieren - Datum - Kalendertyp (wählen Sie Gregorianisch Englisch) - Typ (Abschnitt hat Ihr gewünschtes Format Mittwoch, 14. März 2001)

0
0
0
2013-04-03 13:45:00 +0000

Zeigt das aktuelle Datum an

=TEXT(WEEKDAY(MONTH(TODAY())),"dddd")

Zeigt das aktuelle Datum mit dem gewünschten Text an.

=CHOOSE(WEEKDAY(MONTH(TODAY())), "S-U-N-D-A-Y","M-O-N-D-A-Y","T-U-E-S-D-A-Y","W-E-D-N-E-S-D-A-Y","T-H-R-S-D-A-Y","F-R-I-D-A-Y","S-A-T-U-R-D-A-Y")
0
Advertisement
0
0
2016-11-29 17:45:23 +0000
Advertisement

Die WEEKDAY-Funktion kann in Vba-Codes verwendet werden. Zum Beispiel:

Label1.Caption = WeekdayName(Weekday(TextBox1, 0), False, 0)

Der Tagesname wird aus der TextBox1 im obigen Beispiel geholt. Das Ergebnis ist “Montag ”.

Ich habe diese Funktion verwendet, als ich ein Benutzerformular über die Datumseingabe in die aktive Zelle mit Rechtsklickmenü erstellt habe. Vorlage kann hier eingesehen werden

Advertisement

Verwandte Fragen

6
13
9
10
2
Advertisement
Advertisement