2017-06-22 75 views
-1

我已经使用Get和Let设置了测试类,但是当指定的值不返回时。读取VBA中的自定义类属性不起作用

'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 
+0

你在哪里创建实例?我的代码中没有看到“New”。 – cyboashu

回答

1

有两个问题与您的代码。首先是课堂本身。你的财产获取分配iTargetName而不是lTargetName。另外,在你的Sub Test中,你并不是新建TestClass。做出这2个改变,你会很开心。

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

+0

非常棒的布赖恩谢谢你 - 我的本地变量是错误的:)现在它的工作原理 –