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

Forumthread: Makro ausführen wenn bestimmter Wochentag

Makro ausführen wenn bestimmter Wochentag
15.03.2007 09:00:56
Georg
Hallo,
stehe wieder einmal vor einem kleinen Problem.
Ich möchte ein Makro nur ausführen, wenn das aktuelle PC Datum ein "Freitag" ist.
hat von euch jemand eine Idee ?
Danke
LG
Georg
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro ausführen wenn bestimmter Wochentag
15.03.2007 09:06:00
Rudi
Hallo,
If WeekDay(Date)6 then exit sub
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
AW: Makro ausführen wenn bestimmter Wochentag
15.03.2007 09:07:00
Matthias
Hallo Georg,
als erste Zeile deiner Prozedur:

If Weekday(date,vbMonday)5 Then Exit Sub

Gruß Matthias
AW: Makro ausführen wenn bestimmter Wochentag
15.03.2007 09:10:00
Georg
Hallo,
Danke.
So hab ich das gemacht nur das "5" fehlt bei mir. Für was steht das ?
GE
Anzeige
AW: Makro ausführen wenn bestimmter Wochentag
15.03.2007 09:12:00
Matthias
Hallo Georg,
schau mal in der Excel-Hilfe.
mit Argument (..., vbMonday) ist 1=Montag, 2=Dienstag usw.
ohne Argument (siehe AW von Rudi) ist 1=Sonntag, 2=Montag usw.
Gruß Matthias
AW: Makro ausführen wenn bestimmter Wochentag
15.03.2007 12:53:52
Georg
Ahh, jetzt hab ich's
Danke
GE

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makro ausführen an einem bestimmten Wochentag


Schritt-für-Schritt-Anleitung

Um ein Makro in Excel VBA auszuführen, wenn ein bestimmter Wochentag erreicht ist, kannst du folgende Schritte befolgen:

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

  2. Erstelle ein neues Modul, indem du mit der rechten Maustaste auf "VBAProject (DeinWorkbookName)" klickst und "Einfügen" > "Modul" wählst.

  3. Füge den folgenden Code in das Modul ein:

    Sub MakroAnFreitagAusführen()
       If Weekday(Date, vbMonday) <> 5 Then Exit Sub
       ' Hier kommt der Code für dein Makro
    End Sub
  4. Speichere die Änderungen und schließe den VBA-Editor.

  5. Du kannst das Makro jetzt manuell ausführen oder es mit einem Ereignis verknüpfen.


Häufige Fehler und Lösungen

  • Problem: Das Makro wird an einem Freitag nicht ausgeführt.
    Lösung: Stelle sicher, dass du die Funktion Weekday(Date, vbMonday) korrekt verwendest. Der Wert 5 steht für Freitag, wenn du vbMonday als Starttag nutzt.

  • Problem: Fehlermeldung bei der Ausführung.
    Lösung: Überprüfe, ob der Code innerhalb eines gültigen Moduls steht und ob du die richtigen Berechtigungen hast, um Makros auszuführen.


Alternative Methoden

Falls du nicht mit VBA arbeiten möchtest, gibt es auch andere Möglichkeiten:

  • Bedingte Formatierung: Du kannst Zellen farblich hinterlegen, wenn der Wochentag einem bestimmten Tag entspricht, jedoch kannst du keine Aktionen ausführen.
  • Power Automate: Wenn du Office 365 nutzt, kannst du Power Automate verwenden, um automatisierte Workflows zu erstellen, die auf dem Wochentag basieren.

Praktische Beispiele

Ein häufiges Beispiel ist, ein Makro für den Geburtstag eines Kollegen zu erstellen. Hier ein Beispielcode, der überprüft, ob heute der Geburtstag eines Kollegen ist:

Sub GeburtstagÜberprüfen()
    Dim geburtstag As Date
    geburtstag = DateValue("18.05") ' Beispielgeburtstag

    If Month(Date) = Month(geburtstag) And Day(Date) = Day(geburtstag) Then
        MsgBox "Heute ist der Geburtstag!"
    End If
End Sub

Tipps für Profis

  • Nutze Application.OnTime, um dein Makro zu bestimmten Zeiten auszuführen.
  • Überlege, wie du das Makro an verschiedene Wochentage anpassen kannst, um es flexibler zu gestalten.
  • Teste regelmäßig die Funktionalität, insbesondere wenn du dein Makro in produktiven Umgebungen einsetzt.

FAQ: Häufige Fragen

1. Wie kann ich herausfinden, welcher Wochentag heute ist?
Du kannst die Funktion Weekday(Date) verwenden, um den aktuellen Wochentag zu ermitteln.

2. Kann ich das Makro so anpassen, dass es an mehreren bestimmten Wochentagen ausgeführt wird?
Ja, du kannst weitere Bedingungen in der If-Anweisung hinzufügen, um mehrere Wochentage zu berücksichtigen.

3. Was bedeutet vbMonday in der Funktion Weekday?
vbMonday legt fest, dass die Woche am Montag beginnt und die Wochentage von 1 (Montag) bis 7 (Sonntag) nummeriert werden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige