已启用macros的工作簿保存到错误的文件夹中

当我使用下面的代码来:

  1. 保存启用macros的工作簿
  2. 与打开的工作簿位于同一个文件夹中

它会以错误的名称在桌面上保存该文件:

Sub Save_New_MacroEnabledFile() Dim thisWb As Workbook Set thisWb = ActiveWorkbook Worksheets("Sheet_with_VBA_Button").Activate ActiveWorkbook.SaveAs Filename:=thisWb.Path & Sheets("Sheet_with_NewFile's_Name").Range("A2"), FileFormat:= _ xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _ ReadOnlyRecommended:=False, CreateBackup:=False End Sub 

我究竟做错了什么?

创build新文件path时,您没有添加斜线。

也许你有这个文件的文件夹是在桌面上,没有斜线,只是追加文件名称的文件夹的名称,即文件夹是:

 C:\Users\Antoine\Desktop\Folder 

并附加了文件名后没有斜线是这样的:

 C:\Users\Antoine\Desktop\Folderfilename.xlsx 

试试这个代码:

 Sub Save_New_MacroEnabledFile() Dim thisWb As Workbook Dim fileName As String Set thisWb = ActiveWorkbook Worksheets("Sheet_with_VBA_Button").Activate Application.DisplayAlerts = False fileName = thisWb.Path & "\" & Sheets("Sheet_with_NewFile's_Name").Range("A2") & VBA.IIf(Right(fileName, 5) = ".xlsm", "", ".xlsm") ActiveWorkbook.SaveAs fileName:=fileName, _ FileFormat:=xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _ ReadOnlyRecommended:=False, CreateBackup:=False Application.DisplayAlerts = True End Sub