Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Speichern ohne Nachfrage

Betrifft: Speichern ohne Nachfrage von: hans
Geschrieben am: 02.10.2020 12:57:01

Hallo,

mein File fragt mich ob vor dem Verlassen gespeichert werden soll. Wenn ich "ja" klicke soll nicht nachgefragt werden ob das Original überschrieben wird und bei "nein" Excel komplett geschlossen werden.
Kann mir bitte jemand den Code unten so anpassen das es funktioniert?

Danke Gruß Hans

sieht aktuell so aus:

Private Sub Workbook_Open()
If MsgBox("Dokument bearbeiten?", vbYesNo) = vbYes Then
ThisWorkbook.SaveAs "U:\USER\Automotive\Abrufe\Automobilaufstellung " & Format(Now, "yyyy.mm.dd" _
 _
 _
 _
) & ".xls"

End If

End Sub

Private Sub Workbook_BeforeClose(cancal As Boolean)

If MsgBox("?nderungen in Original speichern?", vbYesNo) = vbYes Then

ThisWorkbook.SaveAs "U:\USER\Automotive\Abrufe\Automobilaufstellung " & ".xlsm"

End If

End Sub


Betrifft: AW: Speichern ohne Nachfrage
von: Rudi Maintaire
Geschrieben am: 02.10.2020 13:12:04

Hallo,
so?
Private Sub Workbook_BeforeClose(cancal As Boolean)
  
  If MsgBox("Änderungen in Original speichern?", vbYesNo) = vbYes Then
    Application.DisplayAlerts = False
    ThisWorkbook.SaveAs "U:\USER\Automotive\Abrufe\Automobilaufstellung" & ".xlsm"
    Application.DisplayAlerts = True
  Else
    ThisWorkbook.Saved = True
    Application.Quit
  End If
  
End Sub

Gruß
Rudi

Betrifft: AW: Speichern ohne Nachfrage
von: Nepumuk
Geschrieben am: 02.10.2020 13:13:38

Hallo Hans,

teste mal:

Option Explicit

Private Sub Workbook_Open()
    If MsgBox("Dokument bearbeiten?", vbYesNo) = vbYes Then
        Application.DisplayAlerts = False
        ThisWorkbook.SaveAs "U:\USER\Automotive\Abrufe\Automobilaufstellung " & Format$(Date, "yyyy.mm.dd") & ".xls"
        Application.DisplayAlerts = True
    End If
End Sub

Private Sub Workbook_BeforeClose(cancal As Boolean)
    If MsgBox("Änderungen in Original speichern?", vbYesNo) = vbYes Then
        Application.DisplayAlerts = False
        ThisWorkbook.SaveAs "U:\USER\Automotive\Abrufe\Automobilaufstellung " & ".xlsm"
        Application.DisplayAlerts = True
    End If
End Sub

Gruß
Nepumuk