为什么会这样:
Sub testsub()
myRange = Range("A1:A5").Address
MsgBox myRange
End Sub
但这会引发RunTime' 424'需要对象吗?
Sub testsub()
myRange = Range("A1:A5")
MsgBox myRange.Address
End Sub
答案 0 :(得分:2)
对象引用意味着使用set
命令创建,因此更改第二个示例如下:
set myRange = Range("A1:A5")
MsgBox myRange.Address
所以应该提出的问题并不是为什么它不能在你的第二个例子中起作用,而是为什么 在第一个例子中工作。
我相信这是因为您从未真正尝试在那里存储对象。相反,您使用范围对象来访问Address
属性,以及该字符串(VBA基本数据类型之一)而不是对象。