mit dem nachfolgenden VBA-Code möchte ich eine Arbeitsmappe schließen, funktioniert aber nicht.
Sub MappeSchließen()
Workbooks("Test.xls").Close SaveChanges:=True
End Sub
Kann mir jemand helfen?
Vielen Dank.
Grüße
mit dem nachfolgenden VBA-Code möchte ich eine Arbeitsmappe schließen, funktioniert aber nicht.
Sub MappeSchließen()
Workbooks("Test.xls").Close SaveChanges:=True
End Sub
Kann mir jemand helfen?
Vielen Dank.
Grüße
geht nicht auch:
Sub MappeSchließen()
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
MfG Alex
Bei mir (XL2000) klappt das einwandfrei.
Heisst die Mappe denn wirklich Test.xls?
Kriegst du eine Fehlermeldung?
Was genau klappt denn nicht?
Es liebs Grüessli aus der Schweiz
Monika Weber
www.jumper.ch
*** Generell: Bitte kein Crossposting ***
Um eine Arbeitsmappe in Excel mit VBA zu schließen, kannst du den folgenden Code verwenden:
Sub MappeSchließen()
Workbooks("Test.xls").Close SaveChanges:=True
End Sub
Dieser Code schließt die Arbeitsmappe „Test.xls“ und speichert alle Änderungen. Stelle sicher, dass die Arbeitsmappe tatsächlich diesen Namen hat, da sonst eine Fehlermeldung auftritt.
Eine alternative Möglichkeit, die aktive Arbeitsmappe zu schließen, ist:
Sub MappeSchließen()
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
Diese Methode speichert die aktive Arbeitsmappe und schließt dann das aktive Fenster.
Fehlermeldung beim Schließen:
Änderungen nicht gespeichert:
SaveChanges:=True
nicht angibst, wird die Arbeitsmappe ohne Speicherung geschlossen, was zu Datenverlust führen kann. Verwende stattdessen ActiveWorkbook.Close SaveChanges:=True
.Excel reagiert nicht:
Falls du eine Arbeitsmappe ohne zu speichern schließen möchtest, kannst du diesen Code verwenden:
Sub MappeSchließenOhneSpeichern()
Workbooks("Test.xls").Close SaveChanges:=False
End Sub
Alternativ kannst du die Methode ActiveWorkbook.Close
verwenden, um die aktive Arbeitsmappe zu schließen. Dies ist besonders nützlich, wenn du mit mehreren Arbeitsmappen arbeitest.
Hier sind einige praktische Beispiele, wie du die VBA-Funktionen nutzen kannst:
Sub SpeichernUndSchließen()
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Sub AlleMappenSchließen()
Dim wb As Workbook
For Each wb In Workbooks
wb.Close SaveChanges:=True
Next wb
End Sub
Sub ExcelBeenden()
Application.Quit
End Sub
Verwende On Error Resume Next
, um den Code robuster zu machen und Fehler zu ignorieren, die möglicherweise beim Schließen auftreten.
Teste deinen VBA-Code in einer Kopie deiner Arbeitsmappe, um Datenverluste zu vermeiden.
Du kannst auch Benutzereingaben für den Dateinamen einfügen, um den Code flexibler zu gestalten:
Sub MappeNachBenutzereingabeSchließen()
Dim dateiname As String
dateiname = InputBox("Gib den Namen der Arbeitsmappe ein:")
Workbooks(dateiname).Close SaveChanges:=True
End Sub
1. Kann ich eine Arbeitsmappe schließen, ohne sie zu speichern?
Ja, du kannst die Arbeitsmappe mit SaveChanges:=False
schließen.
2. Wie schließe ich alle offenen Arbeitsmappen gleichzeitig? Du kannst eine Schleife verwenden, um alle Arbeitsmappen zu schließen. Siehe das Beispiel im Abschnitt „Praktische Beispiele“.
3. Was passiert, wenn ich ActiveWorkbook.Close
ohne SaveChanges
verwende?
Die Arbeitsmappe wird geschlossen, ohne die Änderungen zu speichern, was zu Datenverlust führen kann. Achte darauf, SaveChanges
korrekt zu setzen.
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