Dictionaryに格納したデータを取り出して使用したい場合があります。
Dictionaryのキー/アイテム(要素)を取得する【ExcelVBA】ではセルに出力したりするイメージでしたが、
Dicttionaryのデータを配列として使用したい場合があります。
配列として渡したい場合、Variant型に代入します。
Dictionaryの要素を配列に渡すサンプルコード
'参照設定 Microsoft Scripting Runtime Public Sub sample() Dim arr As Variant Dim dic As Dictionary Set dic = New Dictionary '■dicにデータを格納する dic.Add "あああ", 1 dic.Add "いいい", 2 dic.Add "ううう", 3 Dim var As Variant '■dicのキー(Keys)を配列へ代入 var = dic.Keys Debug.Print var(0) 'あああ Debug.Print var(1) 'いいい Debug.Print var(2) 'ううう '■dicのアイテム(Items)を配列へ代入 var = dic.Items Debug.Print var(0) '1 Debug.Print var(1) '2 Debug.Print var(2) '3 End Sub
注意点
- Option Base 1 の影響は受けません。
- アイテムが配列の場合は、var(0)(0)のように指定して呼び出す必要があります。
※子要素側はOption Base 1の影響は受けます。
関連記事
Dictionaryのキー/アイテム(要素)を取得する【ExcelVBA】
Dictionaryにキーと要素を追加する【Addメソッド】【ExcelVBA】
Dictionaryのキーの要素を変更・更新する【ExcelVBA】
コメント