Einstellung der Item-Eigenschaft in einer Sammlung in VBA

Ich bin überrascht, wie hart dieser wurde zu tun, aber ich kann mir vorstellen es ist eine schnelle Lösung, damit ich hier Fragen (gesucht google und Dokumentation, aber weder geholfen). Ich habe einige code, fügt die Elemente zu einer Sammlung mithilfe von Schlüsseln. Wenn ich über einen Schlüssel, der bereits in der Sammlung, ich möchte einfach legen Sie es durch hinzufügen einer Zahl zum aktuellen Wert.

Hier ist der code:

If CollectionItemExists(aKey, aColl) Then 'If key already has a value
    'add value to existing item
    aColl(aKey).Item = aColl(aKey) + someValue
Else
    'add a new item to the collection (aka a new key/value pair)
    mwTable_ISO_DA.Add someValue, aKey
End If

Als ich das erste mal fügen Sie den Schlüssel/Wert-paar in die Sammlung, ich bin das hinzufügen einer Ganzzahl als Wert. Wenn ich über den Schlüssel wieder, ich versuche, um eine weitere ganze Zahl, um den Wert, aber das funktioniert nicht. Ich glaube nicht, dass das problem liegt in jeder Art von Objekt mis-match oder etwas ähnliches. Die Fehlermeldung die ich derzeit bekomme, ist

Laufzeitfehler 424: Objekt Erforderlich

  • Diese Antwort zu einer früheren, ähnlichen Frage sollte auch die Antwort auf Ihre Frage: stackoverflow.com/questions/5709444/modify-value-by-key/... . Die kurze version ist, dass die Sammlungen nicht so arbeiten arrays; Sie können nicht zuweisen, ein "element". Die Antworten andere, die bereits gegeben haben Sie sind gute alternativen Möglichkeiten zu bekommen, was Sie wollen.
InformationsquelleAutor winnicki | 2011-09-26
Schreibe einen Kommentar