Application.WorkbookBeforeSave event (Excel)

Occurs before any open workbook is saved.


In Office 365, Excel supports AutoSave, which enables the user's edits to be saved automatically and continuously. For more information, see How AutoSave impacts add-ins and macros to ensure that running code in response to the WorkbookBeforeSave event functions as intended when AutoSave is enabled.


expression.WorkbookBeforeSave (Wb, SaveAsUI, Cancel)

expression A variable that represents an Application object.


Name Required/Optional Data type Description
Wb Required Workbook The workbook.
SaveAsUI Required Boolean True if the Save As dialog box will be displayed due to changes made that need to be saved in the workbook.
Cancel Required Boolean False when the event occurs. If the event procedure sets this argument to True, the workbook isn't saved when the procedure is finished.

Return value



This example prompts the user for a yes or no response before saving any workbook.

Private Sub App_WorkbookBeforeSave(ByVal Wb As Workbook, _ 
 ByVal SaveAsUI As Boolean, Cancel as Boolean) 
 a = MsgBox("Do you really want to save the workbook?", vbYesNo) 
 If a = vbNo Then Cancel = True 
End Sub

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.