启用宏的工作簿保存到错误的文件夹

Macro-enabled workbook saved to wrong folder

当我使用下面的代码来:

  1. 保存启用宏的工作簿
  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

我做错了什么?

您在创建新文件路径时没有添加斜杠。

可能你有这个文件的文件夹在桌面上,没有斜线它只是将文件的名称附加到文件夹的名称,即。 文件夹是:

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