ich habe da mal wieder eine Frage. Ich möchte über einen Button die gesamte Exceldatei schließen und speichern.
Dies gleiche soll auch über das kleine "X" rechts oben funktionieren. Kann mir da eine helfen?
Danke
Jörg
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
End Sub
Diesen hier für den Button in ein neues Modul
Sub t()
ThisWorkbook.Close True
End Sub
Grüße, Bernd
If Workbooks.Count=1 Then
Application.Quit
End If
Grüße, BerndUm einen Button in VBA zu erstellen, der eine Excel-Datei speichert und schließt, folge diesen Schritten:
Entwicklertools aktivieren: Stelle sicher, dass das Tab "Entwicklertools" in Excel aktiviert ist. Dies kannst du in den Excel-Optionen unter "Menüband anpassen" tun.
Button einfügen:
VBA-Code hinzufügen:
Sub SpeichernUndSchließen()
ThisWorkbook.Save
ThisWorkbook.Close
End Sub
Schließen über "X": Um die Excel-Datei über das "X" rechts oben zu schließen und gleichzeitig zu speichern, füge den folgenden Code in das Modul "Diese Arbeitsmappe" ein:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
End Sub
Funktion testen: Klicke auf den Button, um zu überprüfen, ob die Datei gespeichert und geschlossen wird.
Workbook_BeforeClose korrekt implementiert ist. Application.Quit korrekt eingebaut ist, falls du alle Excel-Instanzen schließen möchtest.Anstelle eines Buttons kannst du auch eine Tastenkombination erstellen, um die Excel-Datei zu speichern und zu schließen. Gehe dazu zu "Entwicklertools" > "Makros" und wähle dein Makro aus. Klicke auf "Optionen" und weise eine Tastenkombination zu.
Angenommen, du möchtest eine Excel-Datei mit dem Namen "Bericht.xlsx" speichern und schließen. Füge den folgenden VBA-Code in ein Modul ein:
Sub BerichtSpeichernUndSchließen()
ThisWorkbook.SaveAs "C:\Pfad\zu\deinem\Bericht.xlsx"
ThisWorkbook.Close
End Sub
Dieser Code speichert die Datei unter dem angegebenen Pfad und schließt sie anschließend.
On Error Resume Next: Wenn du mehrere Arbeitsmappen verwaltest, kannst du Fehler abfangen, ohne dass dein Makro abbricht.On Error Resume Next
If Workbooks.Count = 1 Then
Application.Quit
End If
On Error GoTo 0
MsgBox für Bestätigungen: Informiere den Benutzer über den Speichervorgang:MsgBox "Die Datei wurde erfolgreich gespeichert und geschlossen.", vbInformation
1. Wie kann ich eine Excel-Datei ohne Bestätigung speichern?
Nutze den Befehl ThisWorkbook.Save im Workbook_BeforeClose-Ereignis, um das Speichern ohne Benutzerinteraktion durchzuführen.
2. Kann ich das Schließen von Excel über ein Makro anpassen?
Ja, du kannst das Workbook_BeforeClose-Ereignis anpassen, um spezifische Bedingungen für das Schließen zu definieren.
3. Was passiert, wenn ich Änderungen nicht speichere?
Wenn du das Workbook_BeforeClose-Ereignis nicht implementierst oder den Speichern-Befehl weglässt, wird Excel dich fragen, ob du die Änderungen speichern möchtest, bevor es schließt.