这段代码工作了几天,循环通过字典很好。循环开始破坏,我在字典中有额外的键,我不知道它们来自哪里。
我正在创建一个带有以下内容的scripting.dictionary:
Dim riskDict As New Scripting.Dictionary
之后,对象为空,如手表中所示:
然后我添加我的第一个键/项对:
riskDict.Add "Weight", Array("WP", 0)
运行这一行代码后,我现在有了这个:
这两个额外的钥匙(第2项和第3项)来自哪里?!这是一个问题,因为我后来在我的代码中使用了:
For Each key In riskDict
temp = riskDict(key)
...
Next key
这个循环中断,因为它开始引用空的键。这似乎直到现在才发生,并且代码已经运行了好几天。 (我在代码中的其他地方更改了一些内容,但与此完全无关。)
如果我做了一些荒谬的事情,或者遗漏了一些明显的事情,请告诉我,谢谢!
答案 0 :(得分:0)
在使用之前将riskDict设为私有或清除数组。由于缺少重要元素,很难说出你在做什么。
Dim riskDict As New Scripting.Dictionary