配列(Dictionary)

Dictionary内のアイテム(配列要素)を更新する【ExcelVBA】

Dictionaryに配列を格納して、入れ子として使用する優位性はこちらの記事で紹介しました。
入れ子の配列の要素を、変更や更新したい場合はどうしたらよいでしょうか?

配列を入れなおす必要性があります。

Dictionary内のアイテム(配列要素)を更新するサンプルコード

'参照設定 Microsoft Scripting Runtime
Public Sub sample()
    Dim arr As Variant
    
    Dim dic As Dictionary
    Set dic = New Dictionary
     
    '■配列を作成
    arr = Array(100, 200, 300, 400, 500, 600)
     
    '■配列をdicに格納する
    dic.Add "num", arr
     
    '■配列から単独の値に変更。
    dic("num") = 2000
    Debug.Print dic.Item("num") '2000
     
    '■配列から配列に変更可能。
    dic("num") = Array(100, 200, 300, 400, 500, 600)
    dic("num") = Array("a", "b", "c")
    Debug.Print dic.Item("num")(0) 'a
     

End Sub

注意点

関連記事

コメント

タイトルとURLをコピーしました