ディクショナリオブジェクトとは
ディクショナリオブジェクトとはキー項目に文字列が使用できる配列のようなものです。通常の配列ではキー項目は整数値の添字でしたが、ディクショナリオブジェクトではこの添字の代わりに任意の文字列を設定することが可能です。キーを指定することで、そのキーに対応する値を簡単に取得することができます。
ディクショナリオブジェクトでできること
- 連想配列の作成
キー項目とそれに対応する値をセットで格納することで、連想配列を作成できます。 キー項目には数値・文字列ともに指定可能です。 - キー項目の存在チェック
ディクショナリオブジェクトにはキー項目の存在を確認するメソッド(.Exists)が用意されています。 このメソッドを利用することでキー項目に設定した値の存在チェックが簡単にできます。 - ユニーク処理(重複データの削除)
ディクショナリオブジェクトにはキー項目を配列として取得するメソッド(.keys)が用意されています。 存在チェックをした値をキー項目に設定し、最後にキー項目を配列として取得することで、 重複データを取り除いたデータの集まりを取得することができます。 - 集計処理
あるキー項目に対する値を簡単に集計することができます。
(例:営業店毎の売上金額の集計など)
ディクショナリオブジェクトのプロパティ・メソッド
下表の “dco” はディクショナリオブジェクトを表します。
プロパティ
プロパティ |
説明 |
dco.Count |
格納済みの項目数を返します。 |
dco.Item( Key ) |
キー項目(Key)に対応する値を設定・取得します。 |
dco.Key( Key ) |
現在のキー項目(Key)から新しいキー項目へ変更を行います。 |
dco.CompareMode |
キー項目の比較方法を設定・取得します。
比較方法を変更する場合はディクショナリオブジェクト生成直後に行う必要があります。
既にキー項目や値が格納されている状態では、比較方法の変更はできません。
(※詳細な設定値は以下参照)
|
CompareMode に指定可能な値
定数 |
値 |
説明 |
vbUseCompareOption |
-1 |
Option Compare ステートメントの設定を使用して比較を行います。
|
vbBinaryCompare |
0 |
バイナリ モードで比較を行います。(既定値)
|
vbTextCompare |
1 |
テキスト モード(大文字/小文字、全角/半角 区別なし)で比較を行います。
|
メソッド
メソッド |
説明 |
dco.Add( Key, Item ) |
ディクショナリに新しいキー項目(Key)とその値(Item)を格納します。 |
dco.Exists( Key ) |
指定されたキー項目(Key)が存在するかどうかを True / False で返します。 |
dco.Items |
ディクショナリに登録されたすべてのItemを配列として取得します。 |
dco.Keys |
ディクショナリに登録されたすべてのキー項目を配列として取得します。 |
dco.Remove( Key ) |
指定されたキー項目(Key)とその値をディクショナリ内から削除します。 |
dco.RemoveAll |
ディクショナリに登録されたすべてのキー項目とその値を削除します。 |