Beim Speichern führe ich diverse Konsistenzprüfungen durch. Wenn das Programm hier auf einen Fehler läuft, wird das Speichern mit einer Fehlermeldung abgebrochen:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Modul1.Konsistenzprüfungen
If Modul1.Fehler = True Then
Cancel = True
Exit Sub
End If
End Sub
Dies funktioniert auch ohne Probleme.
Mein Problem ist aber nun, wenn man die Datei zu schließen versucht (ohne vorher zu speichern), fragt das Programm natürlich, ob man speichern möchte. Beantwortet man dies mit ja, werden richtigerweise oben angegebene Konsistenzprüfungen durchlaufen. Tritt dabei ein Fehler auf, wird dieser angezeigt und das Speichern richtigerweise nicht durchgeführt. Also bis hierhin auch alles ok!
Nach Anzeige der entsprechenden Fehlermeldung wird aber anschließend nicht die komplette Routine durch "Exit Sub" abgebrochen, sondern man ist anscheinend trotzdem immernoch im Schließvorgang und das Programm fragt wieder, ob man speichern möchte, bestätigt man dies mit ja, geht wieder alles von vorne los, d.h. man kommt aus dem Schließvorgang nicht mehr raus ...
Meine Frage ist also, wie kann ich den Schließvorgang aus oben angegebener Routine heraus komplett abbrechen? "Exit Sub" reicht hier offensichtlich nicht ...
Vielen Dank im voraus für die Hilfe!
Kerstin.