Excel VBAにおける、ループ処理(繰り返し処理)を行う「For」文ですが、ここでは、連想配列と組み合わせて使用する「For Each」文について解説しています。
構文
連想配列[Dictionary]とFor Each文を組み合わせる構文です。
For Each 連想配列から取得した値を格納する変数 In 連想配列 Debug.Print(連想配列から取得した値を格納する変数) Next
使用例
「For Each」文を使用して、ループ処理を行うサンプルになります。
Sub Sample()
' 宣言
Dim dic As Object, key As Variant
Set dic = CreateObject("Scripting.Dictionary")
' キーとアイテムを登録する
dic.Add "りんご", "100円"
dic.Add "みかん", "100円"
dic.Add "メロン", "300円"
' ループ
For Each key In dic
' 連想配列の内容を確認
Debug.Print (key & "," & dic(key))
Next
End Sub
実行すると、連想配列に格納した値が順番に取り出されて、1つずつイミディエイトウィンドウに表示されます。
下記がサンプルの実行結果です。
りんご,100円 みかん,100円 メロン,300円
リンク
コメント