До сих пор я всегда успешно использовал ByRef
. Мне нужна функция для изменения Double
из объекта класса. Для иллюстрации рассмотрим следующую программу.
Class1.cls:
Public d As Double
Sub Test()
Dim c As Class1, d As Double
Set c = New Class1
c.d = 5
d = 5
ChangeVar c.d
ChangeVar d
Debug.Print c.d
Debug.Print d
End Sub
Sub ChangeVar(ByRef d As Double)
d = 10
End Sub
К моему удивлению, приведенный выше пример выведет
5
10
Anybody?