2017-11-22 20 views
8

を追加し、引数または無効なプロパティの割り当てコレクションの間違った数が、私は長い時間が今の引数または無効なプロパティの割り当てのコレクションエクセルVBA:

エラーの

間違った番号を取得してきました、何が間違っているか把握することはできません。私はそのクラスの中にクラスとCollectionがあり、そのコレクションに値を追加するのにSubがあります。メインモジュール内部

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 

なぜこれができないのとどのように私はクラスのコレクションに項目を追加するには?

答えて

6

sumLossesは、タイプCollectionであるため、別の変数/関数にはオブジェクトがあり、Setである必要があります。

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

またプロパティAs Collectionを定義することは何も悪い考えないかもしれません(これはエラーが発生することはありませんでした):それは動作するはずSetを使用して

。あなたはCollectionとしてPublic Property Get getSumLosses()を宣言し、Setを使用する必要が

+1

ありがとうございました。簡単な間違い、気づかなかった、それはもっと何かだと思った。 – Ans

3

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 

:)