Excel VBA- 打开工作簿时出现运行时错误 1004

Excel VBA- Runtime Error 1004 opening a workbook

vba 很新,但我写了一段代码,取消合并列中的行,然后复制单元格,然后粘贴到不同的宏工作簿中。代码运行 好当我先运行吧。但是我今天尝试使用它,我很震惊我有一个错误。此错误表示找不到目标文件名。这很奇怪,因为目标文件名没有改变或移动。这是代码示例。

错误显示在行:

Set book2 = Workbooks.Open("Fiscal '17 Reported Straddle Fuel Usage.xlsm")

代码如下:

Public Sub Button6_Click()
       'Change name of button

       Worksheets("7500").Buttons("Button 6").Text = "Send"
       With Sheets("7500")

       'Unmerge cells
       .Range("AI3:AI92").Select
       With Selection
        For Each rCell In Selection
         With rCell
         If .MergeCells Then
          .MergeArea.UnMerge
         End If
        End With
       Next rCell
       End With
      End With

      'open destination workbook

       Dim book1 As Workbook
       Dim sheet1 As Worksheet
       Dim book2 As Workbook
       Dim sheet2 As Worksheet
       Application.ScreenUpdating = False
       Set book1 = ThisWorkbook
       Set book2 = Workbooks.Open("Fiscal '17 Reported Straddle Fuel Usage.xlsm")
       Set sheet1 = book1.Sheets("7500")
       Set sheet2 = book2.Sheets("Nov ‘17")

the destination file name did not change or move

您没有指定路径。指定路径。

Set book2 = Workbooks.Open("Fiscal '17 Reported Straddle Fuel Usage.xlsm")
Const path As String = "C:\Foo\Bar\Fiscal '17 Reported Straddle Fuel Usage.xlsm"
Set book2 = Workbooks.Open(path)

Workbooks.Open 无论 CurDir 路径是什么,只要用户看到 "open file" 对话框并且他们开始四处浏览,CurDir 的值就会改变: 没有完整路径的文件名是不可靠的。

与 VBA 中的许多事情一样,最好明确说明。给它一个完整的路径。