Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro wöchentlich ausführen

Makro wöchentlich ausführen
03.12.2019 14:00:40
Olli
Hello again liebes Forum,
ich habe die Idee gehabt, dass es ganz cool wäre, wenn mein geschriebenes Makro sagen wir zum Beispiel: jeden Freitag um 13:00 Uhr automatisch ausgeführt wird. Am besten ohne dass ich die Datei bewusst öffnen muss.
Der PC ist um die Uhrzeit normalerweise sowieso an, deswegen gäbe es da kein Problem.
Habt ihr Ideen, wie man so etwas realisieren kann und geht das überhaupt?
Freue mich auf eure Vorschläge,
Gruß Olli
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro wöchentlich ausführen
03.12.2019 14:04:12
Torsten
Hallo,
Da die Datei geoeffnet sein muss, um das Makro zu starten, muesstest du ueber den Task Scheduler von Windows die Excel Datei erst oeffnen. Dort sollte dann im Workbook_Open Ereignis der Start des Makros stehen.
Gruss Torsten
AW: Makro wöchentlich ausführen
03.12.2019 15:39:40
Olli
Hallo Torsten,
sowas dachte ich mir schon fast aber das heißt ja, dass ich das Makro beim starten des Programms ausführen müsste oder? Oder kann ich in meinem Code ebenfalls eine Routine erstellen, die Prüft ob Freitag 13:00 Uhr ist und erst dann das Makro ausführt. Wenn das geht könnte ich ja zusätzlich das mit dem Task sheduler machen und somit den Prozess automatisieren.
Gruß Olli
Anzeige
AW: Makro wöchentlich ausführen
03.12.2019 16:37:39
Werni
Hallo Torsten
Du kannst bei Workbook_Open abragen .....
Private Sub Workbook_Open()
If Weekday(Date) = 3 And Time > "12:57" And Time 

Wenn ein anderer Wochentag und/oder die Zeiten nicht stimmen passiert nichts.
Aber für die Zeiten solltest du schon ein paar Minuten einkalkulieren.
Gruss Werni
Anzeige
AW: Makro wöchentlich ausführen
03.12.2019 16:39:52
Werni
Sorry, der Freitag ist Weekday 5
Private Sub Workbook_Open()
If Weekday(Date) = 5 And Time > "12:57" And Time 

AW: Makro wöchentlich ausführen
04.12.2019 07:57:15
Olli
Hallo Werni,
genau das brauchte ich, danke dir !
Gruß Olli
AW: Makro wöchentlich ausführen
04.12.2019 05:50:46
Torsten
Hallo Werni,
die Anfrage kam von Olli. Aber egal. Nichts desto trotz muss die Exceldatei mit dem Makro geoeffnet sein an diesem Tag. Die Abfrage ist natuerlich wichtig, da ja die Datei auch an einem anderen Tag geoeffnet (manuell) werden kann. Dann wuerde das Makro natuerlich auch anlaufen. Das waere dumm, wenn nicht erwuenscht.
Gruss Torsten
Anzeige
AW: Makro wöchentlich ausführen
04.12.2019 08:03:58
Werni
Hallo Torsten
Danke, hab es nachträglich noch bemerkt.
Auch dass der Freitag in VBA auch der 6. Tag ist.
Hallo Olli
Im Anhang noch den Beschrieb
Userbild
Suche nach Aufgabenplanung
Gruss Werni
https://www.herber.de/bbs/user/133578.xlsx
Anzeige
AW: Makro wöchentlich ausführen
04.12.2019 09:21:26
Olli
Hallo Werni,
danke das ist eine gute Übersicht!
Ich habe den Code vorhin versucht und musste einsehen, dass das in PowerPoint wie in meinem fall gar nicht geht :). Ich habe jetzt aber ein Add-In für PowerPoint geschrieben, dass abwägt ob es die richtige Datei ist und mithilfe deines Codeschnipsels, führt PowerPoint meinen Code um die gewünschte Uhrzeit aus, solange sie geöffnet ist. jetzt mach ich noch das mit dem tasksheduler und mal sehen ob der ganze spaß dann klappt :)
Danke nochmal und Gruß Olli
P.S: Wer den Code benötigt, sagt einfach bescheid!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makro automatisch ausführen: So geht's


Schritt-für-Schritt-Anleitung

Um ein Makro automatisch auszuführen, zum Beispiel jeden Freitag um 13:00 Uhr, kannst du die folgenden Schritte befolgen:

  1. Öffne Excel und erstelle ein neues Makro oder öffne die Datei, die das Makro enthält.
  2. Füge den folgenden Code in das ThisWorkbook-Modul ein:
    Private Sub Workbook_Open()
       If Weekday(Date) = 5 And Time > "12:57" And Time < "13:01" Then
           ' Hier den Code für das auszuführende Makro einfügen
           Call DeinMakro
       End If
    End Sub

    Dies prüft, ob der aktuelle Wochentag Freitag (5) ist und ob die Uhrzeit zwischen 12:57 und 13:01 Uhr liegt.

  3. Verwende den Windows Task Scheduler, um die Excel-Datei zu einem bestimmten Zeitpunkt zu öffnen. So wird das Makro automatisch ausgeführt, sobald die Datei geöffnet ist.

Häufige Fehler und Lösungen

  • Fehler: Das Makro wird nicht ausgeführt, obwohl die Datei geöffnet ist.

    • Lösung: Stelle sicher, dass der Task Scheduler richtig konfiguriert ist und die Excel-Datei zur richtigen Zeit öffnet.
  • Fehler: Der Wochentag wird nicht korrekt erkannt.

    • Lösung: Vergewissere dich, dass der Weekday-Befehl im Code korrekt ist. Freitag ist in VBA der 5. Wochentag.

Alternative Methoden

Es gibt verschiedene Methoden, um ein Makro automatisch auszuführen:

  • Verwendung von Excel-Add-Ins: Du kannst ein Add-In erstellen, das die Logik zur Zeitplanung übernimmt.
  • Verwendung anderer Programmiersprachen: Falls du mit VBA nicht vertraut bist, kannst du auch Python oder PowerShell verwenden, um die Excel-Datei zu steuern und das Makro auszuführen.

Praktische Beispiele

Hier ist ein Beispiel, wie du ein Makro zur Erstellung eines Berichts automatisch ausführen kannst:

  1. Makro erstellen:

    Sub BerichtErstellen()
       ' Dein Code zum Erstellen eines Berichts
    End Sub
  2. Füge den Code in Workbook_Open ein:

    Private Sub Workbook_Open()
       If Weekday(Date) = 5 And Time > "12:57" And Time < "13:01" Then
           Call BerichtErstellen
       End If
    End Sub
  3. Task Scheduler einrichten: Plane das Öffnen der Datei jeden Freitag um 13:00 Uhr.


Tipps für Profis

  • Testen: Teste dein Makro gründlich, bevor du es automatisierst. Überprüfe, ob die Bedingungen korrekt funktionieren.
  • Logging: Füge eine Logging-Funktion hinzu, um nachzuvollziehen, wann das Makro ausgeführt wurde. Dies kann dir helfen, Probleme zu diagnostizieren.
  • Versionskontrolle: Halte deine Makros in einer Versionskontrolle, damit du Änderungen nachverfolgen kannst.

FAQ: Häufige Fragen

1. Kann ich das Makro auch an anderen Tagen ausführen? Ja, du kannst die Bedingung im If-Statement anpassen, um andere Wochentage zu berücksichtigen.

2. Muss Excel geöffnet sein, damit das Makro funktioniert? Ja, die Excel-Datei muss geöffnet sein, damit das Workbook_Open-Ereignis ausgelöst wird und das Makro ausgeführt werden kann.

3. Wie kann ich sicherstellen, dass das Makro nicht an einem anderen Tag ausgeführt wird? Verwende eine zusätzliche Bedingung im If-Statement, um sicherzustellen, dass die Datei nur an dem gewünschten Tag und zur gewünschten Zeit geöffnet wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige