Sub CustomSaveAs()
Dim FName As String
Dim SuggestedPath As String
Dim FFilter As String
Dim FIndex As Integer
On Error GoTo CustomSaveAs_Error
' Set SuggestedPath to the location you want user to save file and optionally add suggested filename. For this example I made it a local var but could also be global.
SuggestedPath = "C:\SuggestedFilename.xls"
' Set FFilter to desired extension(s), if needed; see Help on GetSaveAsFilename
FFilter = "Microsoft Excel Workbook (*.xls), *.xls"
FIndex = 1 'See Help on GetSaveAsFilename
FName = Application.GetSaveAsFilename(SuggestedPath, FFilter, FIndex, "Save As")
If FName <> "False" Then
' If FName = "False" then user clicked Cancel
Application.EnableEvents = False
ActiveWorkbook.SaveAs FName
End If
CustomSaveAs_Exit:
Application.EnableEvents = True
Exit Sub
CustomSaveAs_Error:
MsgBox "Error " & Err.Number & ", " & Err.Description
Resume CustomSaveAs_Exit
End Sub