Kann mir jemand sagen, was ich ergänzen muß, um bei Application.Quit die Abfrage "Speichern ja/nein" zu unterbinden und sofort auf nein zu setzen?
Gruß Andre
Öffne den VBA-Editor in Excel, indem Du ALT + F11
drückst.
Erstelle ein neues Modul: Klicke mit der rechten Maustaste im Projekt-Explorer auf „VBAProject (DeinWorkbook)“ und wähle „Einfügen“ > „Modul“.
Füge den folgenden Code ein:
Sub QuitWithoutSaving()
Application.DisplayAlerts = False ' Deaktiviert die Speicherabfrage
Application.Quit ' Beendet Excel
End Sub
Starte das Makro: Drücke F5
, um das Makro auszuführen. Excel wird nun ohne die Abfrage „Speichern ja/nein“ geschlossen.
Fehler: Excel zeigt trotzdem die Speicherabfrage an.
Application.DisplayAlerts
korrekt auf False
gesetzt ist, bevor Du Application.Quit
aufrufst.Fehler: Das Makro funktioniert nur für das aktuelle Workbook.
ThisWorkbook.Saved = True
setzen, bevor Du Application.Quit
ausführst. Eine weitere Methode zur Vermeidung der Speicherabfrage ist die Verwendung des ThisWorkbook
-Objekts:
Sub QuitWithThisWorkbook()
ThisWorkbook.Saved = True ' Setzt den Speicherstatus auf gespeichert
Application.Quit ' Beendet Excel
End Sub
Diese Methode kann jedoch problematisch sein, wenn Du mehrere offene Workbooks hast, die nicht gespeichert sind.
Hier sind zwei einfache Makros, die die verschiedenen Methoden zeigen:
Mit DisplayAlerts:
Sub QuitWithDisplayAlerts()
Application.DisplayAlerts = False
Application.Quit
End Sub
Mit ThisWorkbook:
Sub QuitWithThisWorkbook()
ThisWorkbook.Saved = True
Application.Quit
End Sub
Du kannst beide Makros testen und sehen, welche Methode für Deine Bedürfnisse am besten geeignet ist.
Application.DisplayAlerts = False
immer in Kombination mit Application.Quit
, um sicherzustellen, dass alle Abfragen unterdrückt werden.1. Frage: Was passiert, wenn ich Application.Quit
ohne vorherige Maßnahmen benutze?
Antwort: Excel wird die Speicherabfrage anzeigen, und Du musst manuell entscheiden, ob Du speichern möchtest oder nicht.
2. Frage: Kann ich DisplayAlerts
dauerhaft deaktivieren?
Antwort: Ja, Du kannst dies in Deinen VBA-Optionen festlegen, jedoch ist es ratsam, es nur temporär für bestimmte Makros zu verwenden, um unbeabsichtigte Datenverluste zu vermeiden.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen