Makro ausführen, wenn Windows gesperrt ist
Schritt-für-Schritt-Anleitung
-
Öffne den VBA-Editor: Drücke ALT + F11
, um den Visual Basic for Applications (VBA) Editor zu öffnen.
-
Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsm)" und wähle Einfügen > Modul
.
-
Kopiere den folgenden Code in das Modul:
Sub Start()
Dim dteNow As Date, dteTime As Date
dteTime = TimeSerial(18, 0, 0)
Do
dteNow = Time
DoEvents
Loop Until dteNow >= dteTime
Call Datei_leeren
End Sub
-
Speichere dein Makro: Schließe den VBA-Editor und speichere die Excel-Datei als Excel-Makro-fähige Arbeitsmappe (*.xlsm)
.
-
Teste das Makro: Lass es laufen, während dein Computer oder Windows gesperrt ist, um zu überprüfen, ob es funktioniert.
Häufige Fehler und Lösungen
- Laufzeitfehler '429': Dieser Fehler tritt auf, wenn die Objekterstellung durch eine ActiveX-Komponente nicht möglich ist. Stelle sicher, dass alle benötigten Bibliotheken aktiviert sind und du die korrekte Version von Excel verwendest.
- Makros werden nicht ausgeführt: Überprüfe, ob die Sicherheitseinstellungen in Excel so konfiguriert sind, dass Makros erlaubt sind. Gehe zu
Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen
.
Alternative Methoden
Wenn dein Computer gesperrt ist und du dennoch sicherstellen möchtest, dass dein Excel-Makro ausgeführt wird, kannst du folgende Methoden in Betracht ziehen:
- Verwendung des Windows Aufgabenplaners: Plane die Ausführung deines Makros zu einem bestimmten Zeitpunkt. Stelle sicher, dass die Excel-Datei geöffnet ist, wenn der Aufgabenplaner das Makro ausführt.
- Verwende einen anderen Browser: Wenn du mit Internet Explorer Probleme hast, probiere Mozilla Firefox. Bei der Verwendung von Firefox musst du möglicherweise den Code anpassen, um die richtigen Funktionen anzusprechen.
Praktische Beispiele
Hier ist ein Beispiel, wie du das Makro anpassen kannst, um eine Datei herunterzuladen:
Sub MMDB_Öffnen_einloggen_Daten_exportieren()
Dim IEApp As Object
Dim IEDocument As Object
Set IEApp = CreateObject("InternetExplorer.Application")
IEApp.Visible = True
IEApp.Navigate "https://mmdb.in.xxxx.xxxx/?db=ek313"
Do: Loop Until IEApp.Busy = False
Set IEDocument = IEApp.Document
Do: Loop Until IEDocument.readyState = "complete"
' Hier deine Login- und Export-Befehle einfügen
' ...
IEApp.Quit
End Sub
Tipps für Profis
- Vermeide die Verwendung von
SendKeys
: Diese Methode ist anfällig für Fehler. Stattdessen solltest du direkt mit den Objekten im Internet Explorer arbeiten.
- Verwende Fehlerbehandlungsroutinen in deinen Makros, um sicherzustellen, dass dein Code auch bei unerwarteten Fehlern funktioniert.
- Teste deine Makros regelmäßig in einer sicheren Umgebung, bevor du sie in einer produktiven Umgebung verwendest.
FAQ: Häufige Fragen
1. Kann ich mein Excel-Makro ausführen, während mein Computer gesperrt ist?
Ja, wenn du das Makro über den Aufgabenplaner startest und die richtigen Einstellungen vornimmst.
2. Was kann ich tun, wenn mein Makro nicht funktioniert, während Windows gesperrt ist?
Überprüfe die Sicherheitseinstellungen und stelle sicher, dass alle benötigten Bibliotheken für das Makro aktiviert sind.
3. Ist es besser, Internet Explorer oder einen anderen Browser zu verwenden?
Es wird empfohlen, Internet Explorer zu verwenden, da dieser besser mit VBA interagiert. Wenn du jedoch auf Probleme stößt, kannst du auch Firefox verwenden, musst aber den Code anpassen.