将字典字符串项更改为 VBA 中的嵌套字典

Changing dictionary string item to nested dictionary in VBA

之后,我尝试了这段代码:

Dim data, tmpDict As Dictionary
Set data = New Dictionary

data.Add "abc", "abc"

Set tmpDict = New Dictionary

data("abc") = tmpDict

遇到运行时错误

error 450 - Wrong number of arguments or invalid property assignment

所以,这是我的问题:如何将字符串形式的字典项更改为另一个字典,使其嵌套到第一个字典中?

您是否希望将 tmpDict 作为键 abc 的返回值?在那种情况下,你应该从一开始就嵌套:

Dim data, tmpDict As Dictionary
Set data = New Dictionary
Set tmpDict = New Dictionary
data.Add "abc", tmpDict

或者,如果您想保留代码的结构,您应该使用关键字 Set,因为您正在设置对对象的引用:

Dim data, tmpDict As Dictionary
Set data = New Dictionary
data.Add "abc", "abc"
Set tmpDict = New Dictionary
Set data("abc") = tmpDict

我承认我可能误解了这个问题,如果是这样的话请告诉我,我会edit/remove我的回答。