オブジェクトのByRef渡しの実験

Sub Test1
 Dim a As Integer, b As Class1
 a = 1
 Set b = New Class1
 Call Test1a(a, b)
 Debug.Print a, obj Is Nothing
 Call Test1b(a, b)
 Debug.Print a, obj Is Nothing
 Test1c(obj)
 Debug.Print obj Is Nothing
 Test1c obj
 Debug.Print obj Is Nothing
End Sub

Sub Test1a(ByVal n As Integer, ByVal obj As Class1)
 n = 0
 Set obj = New Class1
End Sub

Sub Test1b(ByRef n As Integer, ByRef obj As Class1)
 n = 0
 Set obj = New Class1
End Sub

Sub Test1c(ByRef obj As Class1)
 Set obj = new Class1
End Sub