VBAで連想配列
AccessのプロジェクトでVBAのコーディングをしているのですが、自分でもいやになるほどスマートでないコードができました。
連想配列さえあれば、うまくいくのに・・・。
VBでは連想配列は使えないと長い間、思い込んでいました。ダメもとでGoogleで検索してみると、なんとかなりのヒットが。
Dictionaryというものがあるのですね。これは「500の極意」にも載っていないですよ。
ただし、AccessのVBのヘルプのサンプルコードでは、コンパイルエラーになります。
Dim d '変数を宣言します。
Set d = CreateObject(Scripting.Dictionary)
まずは参照設定で、"Scripting Runtime(Scrrun.dll)"を指定するのと、
Dim dicSIZE As Scripting.Dictionary
Set dicSIZE = New Scripting.Dictionary
と、やらなければいけません。(オンラインのMSDNライブラリ)
これでコードがかなりシンプルになりました。
連想配列の概念はPerlやJavaで学んだのですが、やはりいろいろな言語を勉強することは有益です。
カテゴリ
ソフトウェアトラックバック(0)
このブログ記事を参照しているブログ一覧: VBAで連想配列
このブログ記事に対するトラックバックURL: http://codeanimato.com/mt/mt-tb.cgi/265


コメントする