Ich kann anscheinend keine Dokumentation finden, die erklärt, wie eine Hash-Tabelle oder ein assoziatives Array in VBA erstellt wird. Ist es überhaupt möglich?
Kannst du auf einen Artikel verlinken oder besser noch den Code posten?
vba
hash
hashtable
associative-array
Tyler
quelle
quelle
Antworten:
Ich denke, Sie suchen nach dem Dictionary-Objekt, das sich in der Microsoft Scripting Runtime-Bibliothek befindet. (Fügen Sie im Menü Extras ... Referenzen in der VBE einen Verweis auf Ihr Projekt hinzu.)
Es funktioniert so ziemlich mit jedem einfachen Wert, der in eine Variante passt (Schlüssel können keine Arrays sein, und der Versuch, sie zu Objekten zu machen, macht wenig Sinn. Siehe Kommentar von @Nile unten.):
Sie können das VBA Collection-Objekt auch verwenden, wenn Ihre Anforderungen einfacher sind und Sie nur Zeichenfolgenschlüssel benötigen.
Ich weiß nicht, ob einer der beiden tatsächlich etwas hasht, daher möchten Sie vielleicht weiter graben, wenn Sie eine hashtable-ähnliche Leistung benötigen. (EDIT: Scripting.Dictionary verwendet intern eine Hash-Tabelle .)
quelle
Empty
. Ich habe die Antwort entsprechend bearbeitet.Ich habe in der Vergangenheit mehrmals die HashTable-Klasse von Francesco Balena verwendet, als eine Sammlung oder ein Wörterbuch nicht perfekt dazu passte und ich nur eine HashTable brauchte.
quelle
Versuchen Sie es mit dem Dictionary-Objekt oder dem Collection-Objekt.
http://visualbasic.ittoolbox.com/documents/dictionary-object-vs-collection-object-12196
quelle
Los geht's ... kopieren Sie einfach den Code in ein Modul, es ist einsatzbereit
So verwenden Sie es in Ihrer VB (A) App:
quelle