Schließen einer schreibgeschützten Arbeitsmappe (Microsoft Excel)
Gary hat eine schreibgeschützte Arbeitsmappe, auf die mehrere Benutzer zugreifen können. Sie können Zellen ändern, aber ihre Arbeit nicht speichern. Beim Verlassen der Arbeitsmappe möchte Gary, dass Excel nur geschlossen wird, ohne den Benutzer darüber zu informieren, dass es schreibgeschützt ist, und ihm die Möglichkeit gibt, eine Kopie zu speichern.
Dies wird am besten erreicht, indem Sie ein Makro verwenden, um das Flag „Gespeichert“ in der Arbeitsmappe unmittelbar vor dem Schließen zu ändern. Dieses Flag zeigt intern an, ob eine Arbeitsmappe gespeichert werden muss oder nicht. Wenn das Flag False ist, weiß Excel, dass die Arbeitsmappe nicht gespeichert wurde (Änderungen wurden ohne Speichern vorgenommen). Wenn Ihr Makro das Flag auf True setzt, wird Excel direkt geschlossen, da es glaubt, dass alle Änderungen gespeichert wurden.
So sollte das Makro im einfachsten Fall aussehen:
Private Sub Workbook_BeforeClose(Cancel As Boolean) If ThisWorkbook.ReadOnly Then ThisWorkbook.Saved = True End If End Sub
Das Makro sollte dem ThisWorkbook-Objekt im VBA-Editor hinzugefügt werden.
Auf diese Weise wird es automatisch ausgeführt, kurz bevor die Arbeitsmappe geschlossen wird. Das Flag wird auf True gesetzt, und wenn das Makro endet, setzt Excel seine normalen Schließvorgänge fort. Da Excel der Ansicht ist, dass keine nicht gespeicherten Änderungen vorliegen, wird dem Benutzer keine Meldung angezeigt und die Arbeitsmappe wird geschlossen.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (10349) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365.