ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

コレクション(Collection)オブジェクト「連想配列」

      2017/10/12

コレクション(Collection)オブジェクトの使い方


【書式】

Dim myCollection As Collection

Set myCollection = New Collection


コレクションを利用するため、変数を Collection 型で宣言し、New ステートメントを使用して、Collection オブジェクトをセットします。

コレクション(Collection)オブジェクトは、要素(myItem)とそれを取り出すためのキー(Key)を持ち、簡単な連想配列として使用できます。(本格的な連想配列を利用するには 連想配列(Dictionary オブジェクト)を参照して下さい。)


【メソッド】

myCollection.Add ( myItem [, Key, Before, After ] )

myCollection.Remove ( { Index | Key } )

myItem = myCollection.[ Item ] ( { Index | Key } )


【プロパティ】

ItemCount = myCollection.Count


【各項目の説明】

  • myCollection  ・・・  コレクション( Collection )オブジェクト
  • myItem  ・・・  コレクション( Collection )に追加するメンバ(要素)
  • Before  ・・・  Add メソッド 使用時、ここで指定したインデックス番号のメンバ(要素)の前に追加します。(省略可)
  • After  ・・・  Add メソッド 使用時、ここで指定したインデックス番号のメンバ(要素)の後に追加します。(省略可)
  • Index  ・・・  コレクション( Collection )のメンバ(要素)の位置(インデックス番号)
  • Key  ・・・  コレクション( Collection )のメンバ(要素)を取り出すときに使用する名前で文字列で指定します。Add メソッド 使用時、省略した場合は、Item メソッド で取り出すときインデックス番号( Index )しか使用できません。また、数値を指定するとエラーになります(CStr 等の型変換関数で、文字列型にすると設定でいます)。
  • ItemCount  ・・・  コレクション( Collection )のメンバ(要素)数

Item メソッドは、コレクション( Collection )の規定メソッドなので、「Item」は省略することができます。

Add メソッド を利用して追加したメンバ(要素)には、自動的に1から始まるインデックス番号がつけられます。

Add メソッド で、メンバ(要素)を追加する際、すでに設定されている「キー」(Key )を設定してしまうとエラーが発生します。



コレクション(Collection)使用例

サンプルVBAソース


実行結果

Collection 01a

Collection 01b


サンプルVBAソース


実行結果

Collection 02




 - VBA基本 , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

変数がオブジェクト型かどうかをチェックする( IsObject 関数 )

IsObject 関数の使い方 【書式】 result = IsObject ( …

エラー(CVErr 関数・IsError 関数・Error 関数)

CVErr 関数(エラー番号をエラー値に変換する)の使い方 【書式】 retur …

太字・斜体(Bold,Italic,FontStyle)例
フォント 太字・斜体(Bold, Italic, FontStyle プロパティ)

太字の設定(Bold プロパティ) Bold プロパティは、フォントを太字にする …

カレントフォルダの変更・確認
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)

カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …

日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )

DateValue 関数(文字列から日付データを取得) 【書式】 date_va …

DateSerial 関数 TimeSerial 関数 使用例
日付時刻:数値から日付・時刻データを取得( DateSerial 関数、TimeSerial 関数 )

DateSerial 関数(数値を使って日付データを取得) 【書式】 date …

Erase ステートメント(配列の初期化・動的配列のメモリ解放)

Erase ステートメントの使い方 【書式】 Erase myArray [, …

Join 関数
Join 関数(配列の要素を結合)

Join 関数 1次元配列の各要素を指定した区切り文字で連結します。 【書式】 …

指定した値を16進数で表記した文字列に変換する(Hex 関数)

Hex 関数 の使い方 【書式】 result = Hex ( expressi …

Const ステートメント
ユーザー定義定数(Const ステートメント)

定数を使う ユーザー定義の定数を使用するには、Const ステートメントを使って …