Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wochentag aus Datum in VBA errechnen

Forumthread: Wochentag aus Datum in VBA errechnen

Wochentag aus Datum in VBA errechnen
26.02.2003 16:20:10
Lutz Weinrich
Gudden Tach an alle!

Wer weis wie ich in VBA aus einem Datum den Wochentag ausspucken lasse ohne mit einer Hilfszelle arbeiten zu müssen?
Ich möchte MO-DO 8,5 und Fr 4,5 zuordnen. Das Datum steht als Variable zur Verfügung.
Es soll praktisch eine Variable angelegt werden die aus dem Datum dann z.b. 1 für Mo, 2 für Di,... errechnet und speichert auf die ich dann zugreifen kann.


Danke schon mal für eure Hilfe

Ciao Lutz


Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Wochentag aus Datum in VBA errechnen
26.02.2003 16:25:56
PeterW

Hallo Lutz,

Sub datum()
MsgBox Weekday(Date, 2)
End Sub

Gruß
Peter

Super!
26.02.2003 21:17:12
Lutz Weinrich

Servus Peter,
Danke für Deine Hilfe, ich dachte mir schon das es einfach sein mußte, habe aber leider nichts gefunden.

Ciao Lutz

Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Wochentag aus Datum in VBA ermitteln


Schritt-für-Schritt-Anleitung

Um den Wochentag aus einem Datum in VBA zu ermitteln, kannst du die Funktion Weekday verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor in Excel, indem du ALT + F11 drückst.

  2. Füge ein neues Modul hinzu: Rechtsklicke im Projektfenster auf "VBAProject (deineDatei.xlsx)" und wähle "Einfügen" > "Modul".

  3. Gib den folgenden Code ein:

    Sub WochentagAusDatum()
       Dim meinDatum As Date
       meinDatum = #2023-10-02# ' Beispiel: 2. Oktober 2023
       MsgBox "Der Wochentag ist: " & Weekday(meinDatum, vbMonday) ' vbMonday für Montag als ersten Tag
    End Sub
  4. Führe das Makro aus: Drücke F5, um das Makro zu starten. Es zeigt eine MessageBox mit dem Wochentag als Zahl an.

Mit dieser Methode kannst du den Wochentag aus einem Datum auslesen, ohne eine Hilfszelle zu benötigen.


Häufige Fehler und Lösungen

  • Fehler: "Typkonflikt"

    • Lösung: Stelle sicher, dass die Variable meinDatum als Date deklariert ist und ein gültiges Datum zugewiesen wird.
  • Fehler: Falscher Wochentag

    • Lösung: Überprüfe den zweiten Parameter der Weekday-Funktion. Wenn du vbMonday verwendest, beginnt die Woche mit Montag.
  • Fehler: Keine Rückgabe

    • Lösung: Stelle sicher, dass das Makro korrekt ausgeführt wird und dass die MessageBox angezeigt wird.

Alternative Methoden

Neben der Verwendung von VBA kannst du auch Excel-Formeln nutzen, um den Wochentag zu ermitteln. Verwende die Funktion TEXT, um den Wochentag als Text anzuzeigen:

=TEXT(A1, "TTT") ' A1 ist die Zelle mit dem Datum

Eine andere Möglichkeit ist die Verwendung von Wochentag-Funktion in Excel:

=Wochentag(A1, 2) ' Gibt 1 für Montag, 2 für Dienstag usw. zurück

Praktische Beispiele

  1. Wochentag als Zahl ermitteln:

    Sub WochentagZahl()
       Dim datum As Date
       datum = Date ' Aktuelles Datum
       MsgBox "Der Wochentag als Zahl: " & Weekday(datum)
    End Sub
  2. Wochentag in Text umwandeln:

    Sub WochentagText()
       Dim datum As Date
       datum = #2023-10-02#
       Dim wochentag As String
       wochentag = Format(datum, "dddd") ' Vollständiger Wochentag
       MsgBox "Der Wochentag ist: " & wochentag
    End Sub

Tipps für Profis

  • Verwende Konstanten wie vbMonday, um den Starttag der Woche festzulegen.
  • Speichere das Ergebnis des Wochentags in einer Variablen, um mehrere Berechnungen durchzuführen.
  • Nutze Select Case, um unterschiedliche Aktionen basierend auf dem Wochentag auszuführen.

FAQ: Häufige Fragen

1. Wie kann ich den Wochentag als Text ausgeben?
Du kannst die Funktion Format verwenden: Format(datum, "dddd").

2. Ist es möglich, den Wochentag aus einem Datum in Access zu ermitteln?
Ja, du kannst ähnliche VBA-Funktionen in Access verwenden, wie Weekday, um den Wochentag aus einem Datum zu ermitteln.

3. Wie kann ich Wochentage in andere Formate umwandeln?
Du kannst das Ergebnis der Weekday-Funktion in eine If-Anweisung oder Select Case einfügen, um spezifische Formate oder Texte auszugeben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige