0

我正在尝试使用

Workbooks.Open Filename:= [...]

使用对 Microsoft Scripting Routine 的引用来访问for each循环中的某些数据的方法。我已经在其他几个宏中成功完成了此操作,但由于某种原因,在此文件中的所有模块中(我尝试重新启动机器等),我收到消息“编译错误:参数不是可选”的代码那条线。其他工作簿不会在那里抛出错误。

我对该问题的研究并没有针对这种特殊情况产生任何量身定制的东西——我认为也许我需要在某处使用 Set 来强制 VBE 识别该对象?希望更有经验的用户能够识别可能发生这种情况的一些经典情况。我现在唯一的线索是 VBE 似乎没有将“工作簿”识别为关键字,因为它没有将第一个字母大写。

任何帮助将非常感激。

C

4

1 回答 1

1

显然,工作簿中还有其他东西称为Workbooks(变量、类、函数),并且因为它具有更多的本地范围,所以在实际Workbooks对象之前找到它。

您可以重命名有问题的对象或Workbooks以更合格的方式访问:

Application.Workbooks.Open Filename:= [...]
于 2013-02-08T15:10:44.977 回答