Les erreurs de l'ajout d'éléments à un VBA/VB6 Collection

Je suis encore à apprendre VBA et je ne peux pas comprendre wth je vais avoir beaucoup de problèmes avec une des Collections d'objets.

J'ai une fonction qui ajoute des objets personnalisés (j'ai créé une classe très simple pour stocker des données qui ne le typique "lire les données, créer un objet de représentation, de l'enfoncer dans les Collections" genre de chose.

Si j'essaie d'ajouter une "clé" pour le sac.ajouter un appel que je reçois une "erreur de Compilation. Prévu:=" message.

Si je ne le fait pas, il semble avoir travaillé ensuite quand je lance le programme il me dit "Erreur de Compilation. Argument pas une option" et souligne "le getRevColumns = sac" de ligne.

Je ne peux pas pour la vie de me comprendre wth est passe!!! Je soupçonne quelque chose de mal avec la façon dont j'ai initialisé mon sac?! PS: columnMap est le nom de ma classe personnalisée.

Function getRevColumns() As Collection

Dim rng As Range
Dim i As Integer
Dim bag As Collection
Dim opManCol As Integer, siebelCol As Integer
Dim opManColName As String, siebelColName As String
Dim itm As columnMap

Set bag = New Collection
Set rng = shSiebelMap.UsedRange.Columns(5)

i = 1
For i = 1 To rng.Rows.count

    If StrComp(UCase(rng.Cells(i).value), "Y") = 0 Then

        opManCol = rng.Rows(i).OffSet(0, -2).value
        opManColName = rng.Rows(i).OffSet(0, -4)
        siebelCol = rng.Rows(i).OffSet(0, -1).value
        siebelColName = rng.Rows(i).OffSet(0, -3)

        Set itm = New columnMap
        itm.opManColName = opManColName
        itm.opManColNumber = opManCol
        itm.siebelColName = siebelColName
        itm.siebelColNumber = siebelCol

        'WHY DOESN'T IT WORK!''
        bag.Add (itm)

        'MsgBox "opMan Col: " & opManColName & " : " & opManCol & ". Siebel Col: " & siebelColName & " : " & siebelCol'

    End If

Next i

getRevColumns = bag

End Function
Est-il possible que tu postes la classe "columnMap" aussi, s'il vous plaît?

OriginalL'auteur holografix | 2010-07-30