我正在尝试在名为waitpid(3)
的UserForm中使用类属性bc
和time
来填充名为Get
的字典。
一切正常,直到Let
行(需要错误404对象)
注意:如果我将UBidStatus
中的整个代码替换为DicOption
,则代码正常工作。
这是我试图解决的Userform类中的代码。
If Not DicOption(OptName).Exists
答案 0 :(得分:10)
Exists方法的调用如下:
Dictionary.Exists(Key)
所以试试
Public Property Let ProjectOption(ByVal OptName As String, ByVal OptValue As String)
If Not DicOption.Exists(OptName) Then
DicOption.Add key:=OptName, Item:=OptValue
Else
DicOption(OptName) = OptValue
End If
End Property
答案 1 :(得分:7)
如果您指定的密钥不存在,则Scripting.Dictionary
会隐式调用其Add
方法,因此如果目标是"添加或替换"指定键的值,您可以简单地替换:
If Not DicOption(OptName).Exists Then
DicOption.Add key:=OptName, Item:=OptValue
Else
DicOption(OptName) = OptValue
End If
使用:
DicOption.Item(OptName) = OptValue