MsgBox错误中调用范围方法
这是如何工作的:
Sub testsub() myRange = Range("A1:A5").Address MsgBox myRange End Sub
但是这会抛出RunTime'424'对象所需?
Sub testsub() myRange = Range("A1:A5") MsgBox myRange.Address End Sub
对象引用是用set
命令创build的,所以如下改变你的第二个例子是可行的:
set myRange = Range("A1:A5") MsgBox myRange.Address
所以你应该问的问题并不是为什么它在你的第二个例子中不起作用,而是为什么它在第一个中起作用。
我相信那是因为你实际上从来没有试图在那里存储一个对象 。 而是使用范围对象访问Address
属性,这是一个string(VBA基本数据types之一)而不是对象。