在VBA中读取自定义类属性不起作用

时间:2017-06-22 19:13:18

标签: excel vba class properties

我已经使用Get和Let设置了测试类,但是当分配了值时,它们不会被返回。

'Set up test class

Private lTargetName As String

Public Property Get TargetName() As String
TargetName = ITargetName
End Property

Public Property Let TargetName(value As String)
lTargetName = value
End Property

Sub test()
Dim sharedColumn As TestClass
Set sharedColumn = TestClass

sharedColumn.TargetName = "test"
Debug.Print sharedColumn.TargetName ' returns blank
End Sub

1 个答案:

答案 0 :(得分:1)

您的代码有2个问题。第一个是班级本身。您的属性Get分配iTargetName而不是lTargetName。此外,在您的子测试中,您不是在使用TestClass。做出这两项改变,你就会好起来。

一个建议:将Option Explicit放在源文件的顶部以帮助捕获这些错误。