Excel-Datei per Makro neu starten
Schritt-für-Schritt-Anleitung
Um Deine Excel-Datei per Makro neu zu starten, kannst Du die folgenden Schritte befolgen:
-
Öffne den VBA-Editor in Excel (Alt + F11).
-
Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject" > Einfügen > Modul).
-
Kopiere und füge den folgenden Code in das Modul ein:
Public Sub Neustarten()
Application.DisplayAlerts = False
ThisWorkbook.Saved = False
ThisWorkbook.ChangeFileAccess xlReadOnly
Workbooks.Open ThisWorkbook.FullName
End Sub
-
Um das Makro automatisch beim Öffnen der Datei auszuführen, füge den folgenden Code in "Diese Arbeitsmappe" ein:
Private Sub Workbook_Open()
Call Start
End Sub
-
Stelle sicher, dass Du das Makro "Start" definiert hast, damit es beim Neustart ausgeführt wird.
Häufige Fehler und Lösungen
Ein häufiger Fehler, den Benutzer erleben, ist, dass das Makro beim Neustart nicht ausgeführt wird. Hier sind einige Lösungen:
-
Problem: Das Makro wird nicht beim Neustart ausgeführt.
- Lösung: Stelle sicher, dass Du
ThisWorkbook.ChangeFileAccess xlReadOnly
im Neustarten
-Makro korrekt verwendest. Bei Schreibschutz kann das ursprüngliche Makro nicht ausgeführt werden.
-
Problem: Die Datei öffnet sich, aber das Makro "Start" wird nicht aufgerufen.
- Lösung: Verwende
Application.Run "Start"
im Neustarten
-Makro, um das Makro aufzurufen.
Alternative Methoden
Wenn das Neustarten über ein Makro nicht wie gewünscht funktioniert, kannst Du folgende Alternativen in Betracht ziehen:
- Batch-Datei: Erstelle eine Batch-Datei, die Excel schließt und neu startet. Dies kann über die Windows Aufgabenverwaltung automatisiert werden.
- VBA-Fehlerbehandlung: Implementiere eine Fehlerbehandlung in Deinen VBA-Skripten, um Laufzeitfehler zu vermeiden, die möglicherweise das Neustarten beeinträchtigen.
Praktische Beispiele
Hier ist ein Beispiel, wie Du den Neustart der Excel-Datei mit einem einfachen Test-Makro kombinieren kannst:
Public Sub Neustarten()
On Error Resume Next
ThisWorkbook.Saved = False
ThisWorkbook.ChangeFileAccess xlReadOnly
Application.Run "Test"
End Sub
Sub Test()
MsgBox "Test"
End Sub
In diesem Beispiel wird das Makro "Test" beim Neustart aufgerufen, was hilfreich ist, um sicherzustellen, dass das Makro funktioniert.
Tipps für Profis
- Verwende On Error Resume Next: Dies kann helfen, die Ausführung des Codes auch bei Laufzeitfehlern fortzusetzen.
- Debugging: Nutze die Debugging-Tools im VBA-Editor, um Probleme zu identifizieren.
- Makrosicherheit: Stelle sicher, dass Deine Excel-Datei die richtigen Makrosicherheitseinstellungen hat, um die Ausführung zu erlauben.
FAQ: Häufige Fragen
1. Frage
Warum wird mein Makro nicht beim Neustart ausgeführt?
Antwort: Überprüfe, ob Du die Datei im Schreibschutzmodus öffnest. Wenn das Makro aus einer schreibgeschützten Datei gestartet wird, kann es zu Problemen kommen.
2. Frage
Kann ich Excel auch ohne VBA neu starten?
Antwort: Ja, Du kannst auch eine Batch-Datei verwenden, die Excel schließt und neu startet, was eine gute Alternative sein kann, wenn VBA nicht funktioniert.