BizFAQ-ビズファックBizFAQ-ビズファック仕事・ビジネスにおけるちょっと困ったこと、わからないことをズバリ解決お悩み解決サイトです。GenDictionaryデータ型は日本語では「連想配列」とも呼ばれ、VBAでも使用できます。その名の通り、「文字」から「連想して」値を取り出します。「Point」というDictionaryをVBAで定義した上で、「田中」という文字列から「87点」を取り出すような格好になります。SubDictionaryデータ型をVBAで使用するにはDictionaryデータ型は比較的新しい言語で搭載されているデータ型というふうに考えがちですが、VBAでも他の言語とも遜色なく使用することが出来ます。参照設定せずに使用する方法もありますが、VBAのコード補完が使用できなくなってしまうので、参照設定をする方法をおすすめします。1.参照設定をするDictionaryデータ型は初期状態では使用することが出来ません。参照設定は「ツール」→「参照設定」から設定できます。Runtime」を参照します。2.サンプルを作成するまずは動く物を作りましょう。基本的に「オブジェクト」と呼ばれるものは全て「New」して代入するか、もともと用意されているものを代入するかの2つに分かれます。今回のDictionaryデータ型はもともとあるのを利用するわけではないので、「New」して代入します。Dictionaryデータ型はインデックスとして利用する文字列と、それで連想される値を同時に入力します。Sub実行してみると、メッセージボックスで「87」が表示されます。3.エラーになるんだけど...Dictionaryデータ型使う時よく起きるのは、重複したキーを追加しようとしたエラーです。重複させないように、キーの追加前に存在を確かめます。Boolean型で検査の結果を返します。Subコードを実行するとエラーなく、「90」が表示されます。ステップ実行してみると一目瞭然ですが、Point.Addではなく、Point(key)から値の再設定を行っています。Dictionaryデータ型は実際使いやすいものではありませんが、とても読みやすいVBAコードになります。参照設定についても解説しました。参照設定はVBAの世界を広げるようなものです。本来のVBAでは不可能なコードも可能になることもありますので、どんどん情報を集めてください。