Я пытаюсь имитировать в VBA написанный мной скрипт на Python, который динамически создает диктонарное.Я сталкиваюсь с проблемами в последней строке следующего цикла:
Dim transactions As New Scripting.dictionary
Dim used_parents As collection
Set used_parents = New collection
Dim parent_count As Integer
Dim groups As New Scripting.dictionary
[...]
For Each Key In transactions.Keys
used_parents.Add transactions(Key)
parent_count = col_item_count(transactions(Key), used_parents)
groups(parent_count).Add Key' this does not work; I need to somehow tell VBA that "groups(parent_count)" is a collection, to be able to add to that collection
Next Key
Мне нужно, чтобы значение словаря groups(parent_count)
было коллекцией для добавления к ней.
Этовозможно ли в VBA иметь коллекцию в качестве значения словаря?
Для справки рабочий код Python выглядит следующим образом (ключи в словаре - это списки, поэтому я легко могу к ним добавить):
from collections import defaultdict
partials = ['tomek','jacek','agata','piotrek','stefan','kasia','krystyna','janek','pawel','leopold']
parents = ['a','b','c','d','a','d','f','c','c','a']
transactions = zip(partials, parents)
used_parents = []
groups = defaultdict(List)
for key, value in transactions:
used_parents.append (value)
parent_count = used_parents.Count(value)
groups ['Group ' + str(parent_count)].append(key)