在VB脚本中导致错误的RefreshAll方法

我写了一个关于一个月去的VB脚本,其目的是:

  1. 打开一个Excel文件
  2. 全部刷新(是2倍)
  3. 保存文件的工作副本。
  4. 如果是星期五,则使用date作为命名约定的一部分保存文件的存档版本。

自那时以来,它通过任务计划程序每天都运行良好。 但是,今天我收到一个错误 – 800A03EC – 引用了第9行的RefreshAll方法。

Option Explicit Dim xlApp, xlBook, xlSheet Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("G:\MyFolder\MyFile.xlsx") Set xlSheet = xlBook.worksheets.item(1) xlBook.RefreshAll WScript.Sleep(2*60*1000) xlBook.RefreshAll WScript.Sleep(2*60*1000) xlBook.Save If Weekday(Date()) = 6 Then xlBook.SaveAs "G:\MyFolder\" & Year(Date()) & "\" & "MyFile - " & DatePart("m", Now) & DatePart("d", Now) & DatePart("yyyy", Now) & ".xlsx" End If xlBook.Close xlApp.Quit Set xlSheet = Nothing Set xlBook = Nothing Set xlApp = Nothing 

诊断尝试:

  • Excel文件打开没有错误
  • 一旦打开,我可以在Excel文件中手动RefreshAll
  • Excel文件名称没有改变。
  • 如果我注释掉脚本中的RefreshAll行,它将毫无错误地运行。
  • 我有一个通过任务计划程序运行的其他VB脚本。
    • 它已经成功完成。
    • 它不使用RefreshAll方法。 它确实使用macros来更新数据。

在这一点上,任何build议都会有所帮助。 谢谢。