Vba 参数数目错误或添加的属性分配集合无效

Vba 参数数目错误或添加的属性分配集合无效,vba,excel,Vba,Excel,我得到了一份工作 参数数目错误或属性分配集合无效 错误已经很长时间了,但无法找出错误所在。我在该类中有一个类和一个集合,还有一个子集合,用于向该集合添加值 Private sumLosses As Collection Private Sub Class_Initialize() Set sumLosses = New Collection End Sub Public Property Get getSumLosses() getSumLosses = sumLosses

我得到了一份工作

参数数目错误或属性分配集合无效

错误已经很长时间了,但无法找出错误所在。我在该类中有一个类和一个
集合
,还有一个
子集合
,用于向该集合添加值

Private sumLosses As Collection

Private Sub Class_Initialize() 
    Set sumLosses = New Collection
End Sub

Public Property Get getSumLosses()
    getSumLosses = sumLosses
End Property
主模块内部:

For Each clientCopy In clientsColl
        clientCopy.getSumLosses.Add 200  'error
        clientCopy.getSumLosses.Add (200) 'error
Next

为什么会失败以及如何将项目添加到类的集合中?

sumloss
属于
集合类型
,因此它是一个对象,必须
设置为另一个变量/函数

使用
Set
时,它应该可以工作:

Public Property Get getSumLosses() As Collection
    Set getSumLosses = sumLosses
End Property

同时将属性
定义为集合
可能不是个坏主意(但这并没有导致错误)。

您需要将
公共属性Get getsumloss()
声明为
集合
并使用
设置

Private sumLosses As Collection

Private Sub Class_Initialize() 
    Set sumLosses = New Collection
End Sub

Public Property Get getSumLosses() as Collection
    Set getSumLosses = sumLosses
End Property

:)

谢谢。容易犯错误,甚至没有注意到,认为这是更多的东西。