before_Close - Auslesen der Benutzeraktion

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: before_Close - Auslesen der Benutzeraktion
von: Andreas
Geschrieben am: 03.03.2005 17:37:13
Hallo VBA-Profis,
ich habe schon das Forum durchstöbert´, komme aber leider nicht sonderlich weiter. Ich habe folgende Prozedur:


Private Sub Workbook_BeforClose(cancel As Boolean)
   If (Workbooks(test.xls).ActiveSheet.Name = "Einleitung" or ...........) then
        Anweisung 1
        Anweisung 2
   End If
End Sub

Jetzt möchte ich, dass diese Prozedur nur dann ausgeführt wird, wenn der Benutzer das Fenster mit "Ja" (-> für Speichern) bestätigt hat. Wenn der Benutzer auf "Nein" (-> Änderungen nicht speichern) soll eine andere Befehlsfolge durchgeführt werden. Bei "Abbruch" natürlich soll die Prozedur verlassen werden.
Wie kann ich das realiseren?
Vielen dank im voraus,
Grus
Andreas
Bild

Betrifft: AW: before_Close - Auslesen der Benutzeraktion
von: Beate Schmitz
Geschrieben am: 03.03.2005 20:25:45
Hallo Andreas,
probier mal diesen:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Erzwingen, dass Speichern abgefragt wird
        Msg = "Ja:               Geänderte Datei " & Me.Name & " speichern und schliessen" & Chr(10) & "Nein:            Datei schliessen ohne zu speichern" & Chr(10) & "Abbrechen: Datei bleibt geöffnet"
        Ans = MsgBox(Msg, vbQuestion + vbYesNoCancel)
        Select Case Ans
            Case vbYes
'Hier der Code der beim Schließen mit Speichern ablaufen soll
    Me.Save
            Case vbNo
                Me.Saved = True
                Cancel = False
            Case vbCancel
                Cancel = True
        End Select
End Sub

Gruß,
Beate
Bild

Betrifft: AW: before_Close - Auslesen der Benutzeraktion
von: Andreas
Geschrieben am: 03.03.2005 21:39:28
Hallo Beate,
ich hab's zwar noch nicht auf der Arbeit getestet, aber auf meinem heimischen PC hats' gefunzt.
lieben dank,
Andreas
 Bild

Beiträge aus den Excel-Beispielen zum Thema "before_Close - Auslesen der Benutzeraktion"