Workbook.Save Method (Excel)

Office 2013 and later

Contribute to this content

Use GitHub to suggest and submit changes. See our guidelines for contributing to VBA documentation.

Saves changes to the specified workbook.

expression .Save

expression A variable that represents a Workbook object.

To open a workbook file, use the Open method.

To mark a workbook as saved without writing it to a disk, set its Saved property to True.

The first time you save a workbook, use the SaveAs method to specify a name for the file.

This example saves the active workbook.


This example saves all open workbooks and then closes Microsoft Excel.

For Each w In Application.Workbooks 
Next w 

Sample code provided by: Holy Macro! Books, Holy Macro! It’s 2,500 Excel VBA Examples

This example uses the BeforeSave event to verify that certain cells contain data before the workbook can be saved. The workbook cannot be saved until there is data in each of the following cells: D5, D7, D9, D11, D13, and D15.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   'If the six specified cells do not contain data, then display a message box with an error
   'and cancel the attempt to save.
   If WorksheetFunction.CountA(Worksheets("Sheet1").Range("D5,D7,D9,D11,D13, D15")) < 6 Then
      MsgBox "Workbook will not be saved unless" & vbCrLf & _
      "All required fields have been filled in!"
      Cancel = True
   End If
End Sub

Holy Macro! Books publishes entertaining books for people who use Microsoft Office. See the complete catalog at