DictionaryをFor Eachで回したい時、Inで各要素を受け取るデータ型はvariant型にします。
For Eachで、受け取れるのはkey/vauleの内keyの方です。
value側はparamList.Item(curKey)な感じで、取得します。
これは、ハッシュ検索になるのでO(1)の計算量となるので速度は十分に速いです。
Dim curKey As Variant Set paramList = CreateObject("Scripting.Dictionary") paramList.Add "key1", "val1" paramList.Add "key2", "val2" For Each curKey In paramList Debug.Print curKey Debug.Print paramList.Item(curKey) Next ' キーを指定して削除 objDic.Remove(strDelKey) ' 全削除 objDic.RemoveAll Debug.Print objDic.Count |
関連記事
コメントを残す