Excel VBA – VBAでHashMapを実現する方法 その1
Javaプログラマは、HashMapを活用した人も多いと思います。
VBAでもHashMapってないの?って思いますよね?
それがあるんですよ。
Dictionary オブジェクトというものを使えば
HashMapを実現可能です。
サンプルコードは以下の通りです。
Sub main() 'HashMapオブジェクトの作成 Dim hashMapObj As Object Set hashMapObj = CreateObject("Scripting.Dictionary") 'HashMapオブジェクトに値を設定 Call setHashMap(hashMapObj) 'HashMapから値を取得 '→「ぶどう」が表示される MsgBox hashMapObj.Item(2) End Sub 'HashMapオブジェクトに値を設定 Sub setHashMap(hashMapObj As Object) '引数は括弧で括らないのがコツ hashMapObj.Add 1, "みかん" hashMapObj.Add 2, "ぶどう" hashMapObj.Add 3, "りんご" End Sub
「add」で格納したい物を格納します。
入れ方は「.Add key,入れたい物」とします。
サンプルコードでは、
「.Add 1, “みかん”」としている箇所です。
(引数は括弧で括らないのがコツです)
取り出すには「Item」を使います。
「.Item(Key)」のように使います。
サンプルコードでは、
「.Item(2)」としている箇所です。
まずはシンプルに、以上で使いこなしてみて下さい。
慣れてくるとこれだけでは足りなくなるので、
次回以降に紹介します。
─────────────── ★
中小企業診断士 かとう
専門は、IT活用による業務改善です。
★───────────────