0

这段代码工作了好几天,遍历字典就好了。循环开始中断,我在字典中有额外的键,我不知道它们来自哪里。

我正在使用以下内容创建 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

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

让我知道我是否在做任何可笑的事情,或者遗漏了一些明显的事情,谢谢!

4

1 回答 1

0

在使用之前将 riskDict 设为私有或清除您的数组。由于缺少关键元素,因此很难说出您在做什么。

Dim riskDict As New Scripting.Dictionary
于 2017-04-13T19:21:47.963 回答