我不明白为什么下面的代码可以在模块中工作……
On Error GoTo NO875
Workrange.Find("875 - COMPLEMENTO IT MANUAL").Select
On Error GoTo 0
'*****errorhandler****
NO875:
Workrange.Find("280 - MEJORA V. C. ABS.").Offset(0, 1).EntireColumn.Select
Selection.insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeft
Workrange.Find("280 - MEJORA V. C. ABS.").Offset(0, 1).Value = "875 - COMPLEMENTO IT MANUAL"
但是,当我将相同的代码复制粘贴到另一个模块中时,显示以下错误消息:
未设置
对象变量或with块变量
此外,在第一个模块中,我可以使用表达式xlFormatFromLeft
,但在另一个模块中,我需要编写xlFormatFromLeftOrAbove
。
知道为什么会这样吗?
提前谢谢。
发布于 2019-06-10 04:48:24
将Option Explicit
添加到每个模块的顶部。
这有几个好处,您将被告知未声明的变量,调试消息将被更多地定制,并且错误行应该突出显示。
在这种情况下,当您运行宏时,包含未声明变量的行将突出显示。注意,变量是在不同的作用域中声明的,而Workrange
可能是在一个模块中的模块级声明的,而不是在另一个模块中声明的。
https://stackoverflow.com/questions/56517659
复制相似问题