Dictionaryに要素を追加(Add)して、データを取得する場合は色々な方法があります。
Dictionaryの結果を2次元配列に格納したい場合があります。
一次元配列の場合は代入するだけでしたが、二次元配列の場合はそのまま、一つずつ代入します。
DictionaryのKey/Itemを二次元配列に変換するサンプルコード
'■Dictionaryから二次元配列に変更する Public Function call_dic_to_arr2D(dic As Dictionary) Dim tmp() As Variant ReDim tmp(UBound(dic.Keys), 1) Dim i As Long For i = 0 To UBound(tmp) tmp(i, 0) = dic.Keys(i) tmp(i, 1) = dic.Items(i) Next call_dic_to_arr2D = tmp End Function
実際の使い方
'参照設定 Microsoft Scripting Runtime Public Sub sample() Dim dic As Dictionary Set dic = New Dictionary dic.Add "1月", "Jan" dic.Add "2月", "Feb" dic.Add "3月", "Mar" dic.Add "4月", "Apr" dic.Add "5月", "May" dic.Add "6月", "Jun" dic.Add "7月", "Jul" dic.Add "8月", "Aug" dic.Add "9月", "Sep" dic.Add "10月", "Oct" dic.Add "11月", "Nov" dic.Add "12月", "Dec" Dim arr As Variant arr = call_dic_to_arr2D(dic) '■結果確認 Debug.Print arr(0, 0) '1月 Debug.Print arr(0, 1) 'Jan Debug.Print arr(1, 0) '2月 Debug.Print arr(1, 1) 'Feb End Sub
コメント