Workbook.SaveAs method (Excel)
Saves changes to the workbook in a different file.
expression.SaveAs (FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
expression A variable that represents a Workbook object.
|FileName||Optional||Variant||A string that indicates the name of the file to be saved. You can include a full path; if you don't, Microsoft Excel saves the file in the current folder.|
|FileFormat||Optional||Variant||The file format to use when you save the file. For a list of valid choices, see the XlFileFormat enumeration. For an existing file, the default format is the last file format specified; for a new file, the default is the format of the version of Excel being used.|
|Password||Optional||Variant||A case-sensitive string (no more than 15 characters) that indicates the protection password to be given to the file.|
|WriteResPassword||Optional||Variant||A string that indicates the write-reservation password for this file. If a file is saved with the password and the password isn't supplied when the file is opened, the file is opened as read-only.|
|ReadOnlyRecommended||Optional||Variant||True to display a message when the file is opened, recommending that the file be opened as read-only.|
|CreateBackup||Optional||Variant||True to create a backup file.|
|AccessMode||Optional||XlSaveAsAccessMode||The access mode for the workbook.|
|ConflictResolution||Optional||XlSaveConflictResolution||An XlSaveConflictResolution value that determines how the method resolves a conflict while saving the workbook. If set to xlUserResolution, the conflict-resolution dialog box is displayed.
If set to xlLocalSessionChanges, the local user's changes are automatically accepted.
If set to xlOtherSessionChanges, the changes from other sessions are automatically accepted instead of the local user's changes.
If this argument is omitted, the conflict-resolution dialog box is displayed.
|AddToMru||Optional||Variant||True to add this workbook to the list of recently used files. The default value is False.|
|TextCodepage||Optional||Variant||Ignored for all languages in Microsoft Excel.
NOTE: When Excel saves a workbook to one of the CSV or text formats, which are specified by using the FileFormat parameter, it uses the code page that corresponds to the language for the system locale in use on the current computer. This system setting is available in the Control Panel > Region and Language > Location tab under Current location.
|TextVisualLayout||Optional||Variant||Ignored for all languages in Microsoft Excel.
NOTE: When Excel saves a workbook to one of the CSV or text formats, which are specified by using the FileFormat parameter, it saves these formats in logical layout. If left-to-right (LTR) text is embedded within right-to-left (RTL) text in the file, or vice versa, logical layout saves the contents of the file in the correct reading order for all languages in the file without regard to direction. When an application opens the file, each run of LTR or RTL characters are rendered in the correct direction according to the character value ranges within the code page (unless an application that is designed to display the exact memory layout of the file, such as a debugger or editor, is used to open the file).
|Local||Optional||Variant||True saves files against the language of Microsoft Excel (including control panel settings). False (default) saves files against the language of Visual Basic for Applications (VBA) (which is typically US English unless the VBA project where Workbooks.Open is run from is an old internationalized XL5/95 VBA project).|
Use strong passwords that combine uppercase and lowercase letters, numbers, and symbols. Weak passwords don't mix these elements.
- Strong password: Y6dh!et5
- Weak password: House27
Use a strong password that you can remember so that you don't have to write it down.
This example creates a new workbook, prompts the user for a file name, and then saves the workbook.
Set NewBook = Workbooks.Add Do fName = Application.GetSaveAsFilename Loop Until fName <> False NewBook.SaveAs Filename:=fName
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.