2
得到這個代碼:的Scripting.Dictionary不認識數字
Dim a, i As Long
With Range("K1", Range("K" & Rows.Count).End(xlUp))
a = .Value
End With
With CreateObject("Scripting.Dictionary")
.CompareMode = vbTextCompare
.Add "test", 1
For i = 1 To UBound(a, 1)
If .exists(a(i, 1)) Then
Cells(i, 14).Value = 1
Else
Cells(i, 14).Value = 0
End If
Next
End With
它完美地會給我一個柱體14「1」時,「測試」一詞是欄中任一K.
如果我將「.Add」測試「1」行改爲「.Add」21「,1」,它只返回「0」,儘管我在列K中有「21」。
網上說的是.key值可以是任何值(文本,數字等)。 由於K列只包含數字(1到25),我需要腳本來標記這些數字中的一個,我真的很想使用「scripting.dictionary」,因爲它是最快的方法。
我在做什麼錯或不是「scripting.dictionary」僅支持數字。
大家好,解決了它。需要將行改爲「.Add 21,1」。所以「21」沒有引號。 – Richard 2012-07-15 06:21:45
你應該發佈這個答案並接受它,以便其他人可以看到你的問題解決了,即使你自己解決了:) – JimmyPena 2012-07-16 17:35:37