将 XLSM 文件保存为任何文件名、格式和目录

Saving an XLSM file as any file name, format, and directory

我正在寻找一个宏来将当前打开的 XLSM 文件另存为具有以下条件的 XLSM 文件以外的文件。

  1. 我希望能够将文件保存为任何名称。

  2. 我希望能够将文件保存为任何格式。

  3. 我希望能够选择保存目录。

所以基本上我希望能够在不使用宏的情况下像保存普通的另存为文件一样保存文件。

我已经看到许多不同的宏可以完成我的部分请求,但没有满足所有条件。

使用文件对话框:

Sub Example1()
Dim intChoice As Integer 
Dim strPath As String 

'make the file dialog visible to the user 
intChoice = Application.FileDialog(msoFileDialogSaveAs).Show
'determine what choice the user made 
If intChoice <> 0 Then 
    'get the file path selected by the user 
    strPath = _ 
        Application.FileDialog(msoFileDialogSaveAs).SelectedItems(1) 
    'displays the result in a message box 
Call MsgBox(strPath, vbInformation, "Save Path")
End If 
End Sub 

要使用 SaveAs,请看一下:http://www.rondebruin.nl/win/s5/win001.htm and https://msdn.microsoft.com/fr-fr/library/office/ff841185.aspx