Wie bekomme ich den Tagnamen in eine Zelle in Excel?

156387
Don Vince

Wie bekomme ich den Tag der Woche (z. B. "Montag") in eine Zelle in Excel?

33
Nun, Sie könnten MONDAY mit Ihrer Tastatur in die Zelle eingeben ... aber irgendwie denke ich, dass Sie etwas anderes meinen. Mike Cooper vor 14 Jahren 4
Oh ja: o) Ich könnte es tatsächlich tippen. Ich werde die Frage aktualisieren, um sie genauer zu fassen Don Vince vor 14 Jahren 0

9 Antworten auf die Frage

54
Rook

Einfaches Beispiel:

A1-Zelle: 08.01.2009
B1-Zelle: = TEXT (WOCHENTAG (A1), "dddd")

Damit wird für den angegebenen Tag der entsprechende Tag gedruckt.

Haben Sie sich das gewünscht?

Danke vielmals! Kleiner Tippfehler: In der Mitte befindet sich ein Semikolon, das ein Komma sein sollte. Don Vince vor 14 Jahren 0
@Don Vince - Ups, tut mir leid. Rook vor 14 Jahren 0
Das Semikolon ist in Lokalisierungen (Ländereinstellungen in Windows) erforderlich, die das Komma als Dezimaltrennzeichen verwenden. Wie in Sprachen, in denen das englische 1.000,00 (eintausend) als 1.000,00 geschrieben würde und somit als 1.000,00 in Excel eingegeben würde. Ich dachte eigentlich, dass ein Semikolon immer akzeptiert wurde, aber ich kann mich irren. Arjan vor 14 Jahren 1
Gern geschehen :) und die richtige Antwort verdient eine positive Bewertung +1 vor 14 Jahren 0
@Arjan van Bentem: Zumindest funktioniert id nicht umgekehrt. Ich verwende deutsche Einstellungen und muss immer Semikolons verwenden. Lucas vor 14 Jahren 0
Dies funktioniert nur, weil der 01.01.1900 ein Sonntag ist. Verlieren Sie die Wochentagsfunktion vollständig, verwenden Sie einfach = TEXT (A1, "dddd") (siehe meine ausführlichere Antwort unten). AdamV vor 14 Jahren 4
Außerdem nur mit der englischen Version von Excel arbeiten. Deutsche Version ist Text (WOCHENTAG (A1); "tttt"). Während Text gleich ist und der Wochentag automatisch übersetzt wird, beachten Sie das "tttt" anstelle von "dddd", das NICHT automatisiert übersetzt wird. Quandary vor 10 Jahren 0
@Quandary Verwenden Sie nicht einmal `WOCHENTAG ()` ... verwenden Sie einfach die `Text`-Funktion direkt für den Wert. ErikE vor 8 Jahren 0
19
AdamV

Die oben gegebene Antwort funktioniert nur von Fluke, da Excel denkt, dass 1/1/1900 ein Sonntag war * und Excel standardmäßig den Sonntag als ersten Wochentag für die Wochentag-Funktion verwendet.

Was Sie in dieser Methode tatsächlich berechnen, ist der Tag der Woche als Zahl und dann als Tag basierend auf dieser Zahl, die als Datum interpretiert wird. Wenn Ihr Datum beispielsweise 1/2/2003 ist und Sie die WEEKDAY-Funktion verwenden, führt dies zu 7 (= Samstag). Wenn Sie diese dann als "dddd" formatieren, erhalten Sie in Excel seit der "Epoche" den Tagnamen des 7. Tages, dh den 01.07.1900, der zufällig ein Samstag ist *. Diese Formel bricht, wenn jemand sie öffnet, der die Option ausgewählt hat, das 1904-basierte Datumssystem zu verwenden, da 1/1/1904 kein Sonntag, sondern ein Freitag war. (Ja, ich weiß, dass kaum jemand das nutzt, aber Sie wollen keine Lösung bauen, die sich darauf verlässt, oder?)

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

=TEXT(A1,"dddd") 

Sie können die Datumszellen natürlich auch selbst mit einem benutzerdefinierten Format formatieren, je nachdem, ob Sie dies wirklich in einer separaten Spalte benötigen oder nicht. Ich verwende häufig Datumsformate wie

ddd dd mmm yyyy 

Um zB Sat 01 Feb 2003 anzugeben, ist das Datum eindeutig, es wird jedoch auch der Name des Wochentags angezeigt.

Die Verwendung einer zweiten Spalte und einer TEXT-Funktion ist wichtig, wenn Sie den Wochentag explizit irgendwo in einem Seriendruck verwenden möchten (z. B.). Ähnlich wie bei Währungen usw. Bei der Zusammenführung von Excel> Word wird der tatsächlich gespeicherte Wert anstelle des on-Werts übergeben -screen-formatierte Version, so dass Word ungeachtet des Zellenformats eine schreckliche Zahl sieht. Ein echtes Textfeld wird "wie es ist" übergeben und korrekt in Word angezeigt.

* Tatsächlich ist es ein Montag, aber Excel wurde so geschrieben, dass es mit den falschen Daten in Lotus 1-2-3 übereinstimmt, die 1900 als Schaltjahr behandelten, wenn dies nicht der Fall ist.

Ich habe es bereits vor Ihrer Bearbeitung angehoben. Jetzt ist es noch besser. Jeroen Wiert Pluimers vor 11 Jahren 0
7
Margaret

Eine andere Möglichkeit, je nachdem, was Sie mit dem Datum danach machen möchten, besteht darin, das Format der Zelle auf Benutzerdefiniert festzulegen: dddd

Hervorragend! Das macht den Trick und ist ideal für Situationen, in denen Sie keine andere Spalte verwenden möchten. Vielen Dank Don Vince vor 14 Jahren 0
Auch wenn Sie eine andere Spalte verwenden möchten, können Sie dies tun und in der ersten Antwort einfach eine Formel wie "= A1" eingeben. Arjan vor 14 Jahren 0
5
Brad

Ich habe festgestellt, dass das Verschachteln von IFAnweisungen mühsam sein kann, aber es funktioniert. Wenn Sie jedoch etwas Tipparbeit speichern möchten, können Sie Folgendes 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" die Zelle (oder Formel) sein, die das betreffende Datum enthält. Zum Beispiel:

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

würde die Abkürzung für das, was heute ist, aus drei Buchstaben drucken.

1
user261479

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

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

Willkommen bei SuperUser. Die Antworten sollten immer in sich abgeschlossen sein. Erweitern Sie daher Ihre Antwort zu einem funktionierenden Beispiel. Wir wissen auch nicht, wo Sie herkommen, daher ist _my local_ etwas unspezifisch. Tim vor 10 Jahren 1
1
user334332

A1 Zelle: 1/8/2009 B1 Zelle: = A1, dann drücken Sie Strg + 1 (Zelle formatieren), wählen Sie die Registerkarte Nummer, klicken Sie auf Benutzerdefiniert und geben Sie "DDDD" in die Textbox txtbox ein

0
Glen Lloyd

Zeigt das aktuelle Datum an

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

Zeigt das aktuelle Datum mit dem erforderlichen 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") 
Dies ist nur eine Verdoppelung mehrerer früherer Antworten. fixer1234 vor 7 Jahren 0
0
Raj

Zellen formatieren - Datum - Kalendertyp (wählen Sie Gregorianisches Englisch aus) - Typ (der Abschnitt enthält das gewünschte Format. Mittwoch, 14. März 2001)

0
kadrleyn

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

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

Der Tagesname wird im obigen Beispiel von TextBox1 abgerufen. Ergebnis ist "Montag" .

Ich habe diese Funktion verwendet, als ich mit einem Rechtsklick-Menü ein Benutzerformular zum Datumseintrag in eine aktive Zelle erstellt habe.

Vorlage kann hier eingesehen werden

Vorschlag: Was an Ihrer Antwort einzigartig ist, der Wochentag, der die Frage direkt beantwortet, ist der Wochentagname und nicht der Wochentag. Das ist der Begriff, auf den ich mich im ersten Satz konzentrieren möchte. fixer1234 vor 7 Jahren 0