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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

配列(宣言・要素数の変更について)

配列の宣言 【書式】※ 配列の宣言 <Type 型の静的配列(固定長配列)の宣言 …

Choose 関数 例01
指定した数値に対応する選択肢の値・数式を返す(Choose 関数)

Choose 関数 の使い方 Choose 関数は、指定されたインデックス値(1 …

文字列:文字列の長さを取得( Len 関数、LenB 関数 )

Len 関数(文字列の長さを取得) 【書式】 result_len = Len …

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

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

IsArray 関数 例
変数が配列かどうかをチェックする( IsArray 関数 )

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

オートシェイプの種類を表す定数
オートシェイプの種類を表す定数(MsoAutoShapeType 列挙型)

MsoAutoShapeType 列挙型 オートシェイプオブジェクトの図形の種類 …

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

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

Weekday 関数・WeekdayName 関数 使用例
日付時刻:日付から曜日を取得( Weekday 関数、WeekdayName 関数 )

Weekday 関数(日付から曜日を表す数値を返す)の使い方 【書式】 week …

乱数(Rnd 関数)例1
乱数を生成する(Rnd 関数)

Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …

書式を変換(Format 関数)

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