首页 > 解决方案 > 如何将第二个字典的键放在第一个字典中?

问题描述

我需要从 dt 获取 k2 值。我该怎么做?

Set dt = New Dictionary
Set dt2 = New Dictionary
k1 = A
k2 = B
s = C
dt2.Add k2, s
dt.Add k1, dt2

标签: excelvbadictionary

解决方案


如果我理解正确,您想返回存储在另一个字典 (dt) 中的每个字典 (dt2) 的键列表。

了解每个字典可能有多个键,您需要构造一个嵌套循环。

例如:


Sub due()
    Dim dt As Dictionary, dt2 As Dictionary
    Dim k1, k2, s
    
k1 = "A"
k2 = "B"
s = "C"

Set dt = New Dictionary
Set dt2 = New Dictionary

dt2.Add k2, s
dt.Add k1, dt2

Dim ka, kb
    For Each ka In dt.Keys
        For Each kb In dt(ka).Keys
            Debug.Print kb
        Next kb
    Next ka
End Sub

将返回存储在外部字典的每个字典项中的所有嵌套字典的键


推荐阅读