scripting.dictionary中的VBA Extra键/项对

时间:2015-12-29 18:24:13

标签: vba scripting.dictionary

这段代码工作了几天,循环通过字典很好。循环开始破坏,我在字典中有额外的键,我不知道它们来自哪里。

我正在创建一个带有以下内容的scripting.dictionary:

Dim riskDict As New Scripting.Dictionary

之后,对象为空,如手表中所示:

enter image description here

然后我添加我的第一个键/项对:

riskDict.Add "Weight", Array("WP", 0)

运行这一行代码后,我现在有了这个:

enter image description here

这两个额外的钥匙(第2项和第3项)来自哪里?!这是一个问题,因为我后来在我的代码中使用了:

For Each key In riskDict
    temp = riskDict(key)
    ...
Next key

这个循环中断,因为它开始引用空的键。这似乎直到现在才发生,并且代码已经运行了好几天。 (我在代码中的其他地方更改了一些内容,但与此完全无关。)

如果我做了一些荒谬的事情,或者遗漏了一些明显的事情,请告诉我,谢谢!

1 个答案:

答案 0 :(得分:0)

在使用之前将riskDict设为私有或清除数组。由于缺少重要元素,很难说出你在做什么。

Dim riskDict As New Scripting.Dictionary