Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
904to908
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
904to908
904to908
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Schließvorgang komplett abbrechen

Schließvorgang komplett abbrechen
12.09.2007 15:50:00
Kerstin
Hallo zusammen, brauche dringende Hilfe und zwar habe ich folgendes Problem:
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.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schließvorgang komplett abbrechen
12.09.2007 17:43:00
fcs
Hallo Kerstin,
nach einiger Bastelarbeit und Probiererei hab ich es hinbekommen. Du muss zusätzlich eine BeforeClose-Prozedur einfügen.
Gruß
Franz

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim test As Long
If ThisWorkbook.Saved = False Then
Modul1.Konsistenzprüfungen
If Modul1.Fehler = True Then
test = MsgBox("Daten nicht konsistent! Datei vor dem Schließen Speichern?", _
vbQuestion + vbYesNoCancel, "Datei Prüfen, Schließen")
Select Case test
Case vbYes
Application.EnableEvents = False
ThisWorkbook.Save
Application.EnableEvents = True
Case vbNo
'Tastenkombi Alt+n an den Änderungen Speichern-Dialog senden
Application.SendKeys ("%n")
Case vbCancel
Cancel = True
Exit Sub
End Select
End If
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Modul1.Konsistenzprüfungen
If Modul1.Fehler = True Then
Cancel = True
MsgBox "Daten nicht konsistent, Speichervorgang abgebrochen!"
Exit Sub
End If
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige