【发布时间】:2021-08-24 17:54:49
【问题描述】:
我在字典中提取了唯一的人名,然后将它们放入一个数组中:
'Extract the dictionary's keys as a 1D array
Dim result As Variant
result = dic.Keys
效果很好 - 我可以看到名为 result 的数组中的唯一名称 - Jane、Bob 等,其中:MsgBox Join(result, vbCrLf)
它使用一个名为 valCounter2 的循环变量,所以我应该能够使用 result(valCounter2) 循环遍历数组
现在我正在尝试在 CX 列中查找这些名称:
Dim LSearchRow As Integer
LSearchRow = 2
While Len(Range("A" & CStr(LSearchRow)).Value) > 0
If Range("CX" & CStr(LSearchRow)).Value = result(valCounter2) Then
最后一行是问题所在。如果我将该行设置为实际值,则它可以工作。所以这有效: If Range("CX" & CStr(LSearchRow)).Value = "Jane Smith" Then
如何让它使用数组变量?
【问题讨论】:
-
保持字典不变并循环范围并使用字典对象的
.exists会更好吗?