Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Arbeitsmappe-Schließen-Abfrage abfangen

Gruppe

Meldung

Problem

Wie kann ich die Werte der Excelabfrage beim Schließen der Arbeitsmappe über VBA abfangen, um je nach Entscheidung das Makro zu verzweigen?

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: basMain

Sub AbfrageBeiSchliessen()
   Dim sMsg As String
   sMsg = "Soll die Arbeitsmappe geschlossen und gespeichert werden?"
   Select Case MsgBox(sMsg, vbInformation + vbYesNoCancel)
      Case vbYes: ActiveWorkbook.Close savechanges:=True
      Case vbNo: Call WeiterBeiNein
      Case vbCancel: Call WeiterBeiAbbruch
   End Select
End Sub

Private Sub WeiterBeiNein()
   MsgBox "Sie haben die Frage nach dem " & Chr(13) _
      & "speichern verneint!"
End Sub

Private Sub WeiterBeiAbbruch()
   MsgBox "Sie haben den Speichern-Dialog" & Chr(13) _
      & "abgebrochen!"
End Sub