我目前正在尝试使用Scripting Dictionary Object执行一项功能。但是,它似乎不起作用。我是Scripting Dictionary Object的新手。该函数用于检查单元格中的数字是1,9,17还是25.如果是1,9,17或25,它将返回'True',否则它将返回'False'。尽管有这些数字,该函数仅返回False。
Function checkNuminList(r As Integer)
Dim myList As Object
Set myList = CreateObject("Scripting.Dictionary")
myList.Add Key:="Num1", Item:="1"
myList.Add Key:="Num2", Item:="9"
myList.Add Key:="Num3", Item:="17"
myList.Add Key:="Num4", Item:="25"
If myList.Exists(r) Then
checkNuminList = "True"
Else
checkNuminList = "False"
End If
End Function
答案 0 :(得分:4)
myList.Exists(r)
其中r表示您的密钥
EG。 Dic.Exists(Key)
因为您的密钥:=" Num1"因此它将一直返回false。
假设r指的是项目,一种方法是循环通过字典来检查项目是否等于你想要的值
例如
Dim key As Variant
For Each key In Dic.Keys
If Dic.Item(key) = r Then
checkNuminList = "True"
Else
checkNuminList = "False"
End If
Next key