以下代码在一行中声明并实例化一个对象,然后尝试将其设置为 Nothing
Dim myObject As New MyClass
Set myObject = Nothing
MsgBox (myObject Is Nothing) 'FALSE
第三行的消息是“False”。但是,如果我将声明和实例化分成两行,如下所示:
Dim myObject As MyClass
Set myObject = New MyClass
Set myObject = Nothing
MsgBox (myObject Is Nothing) 'TRUE
突然消息是“真实的”。我已经在一行中声明并实例化了很多对象,可能需要将其设为 Nothing。有没有办法在不更改所有声明的情况下做到这一点?
另外,如果有人能解释为什么会这样,我将不胜感激。我是 VBA 自学成才,并不太懂这种语言……与我常用的语言相比,这很奇怪……