我可以直接为对象分配值吗?

时间:2020-08-27 06:47:50

标签: vba class properties

在VBA中,您可以使用单元格 Cells.Value ,其效果相同。 Test1和Test2的行为方式相同,尽管在测试2中,字符串直接传递给了对象。

x

是否可以对任何用户类执行类似的操作?我可以使用属性值将值直接分配给从我的一个类withpout创建的对象吗?

1 个答案:

答案 0 :(得分:0)

根据Tim和K.的建议,我创建了以下课程:

Option Explicit
Dim LNG_Debut As Long

Public Property Let Debut(tLNG_Debut As Long)
    LNG_Debut = tLNG_Debut
End Property

Property Get Debut() As Long
    Debut = LNG_Debut
End Property

然后,我将该类导出到记事本中,并通过以下方式对其进行了修改:

Property Get Debut() As Long
    Attribute Debut.VB_UserMemId = 0
    Debut = LNG_Debut
End Property

最后,我将其重新导入到VBA编辑器中。 然后,Test1和Test2的结果相同

Sub Test1()

    Dim MyVariable As obj_Test
    Set MyVariable = New obj_Test
    MyVariable.Debut = 10

End Sub

Sub Test2()

    Dim MyVariable As obj_Test
    Set MyVariable = New obj_Test
    MyVariable = 10

End Sub

非常感谢