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

  関連記事

Dictionary オブジェクト 使用例1
連想配列(Dictionary オブジェクト)

連想配列 連想配列とは、添字(キー)に文字列を使用することができる配列です。 V …

RegExp オブジェクト Test メソッド
VBA で正規表現を使う(RegExp オブジェクトのメソッド)

RegExp オブジェクトのメソッド RegExp オブジェクトの詳細に関しては …

文字列:文字列の一部を別の文字列で置換(Replace 関数)

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

no image
VBA の演算子(比較演算子)

比較演算子 比較演算子による演算の結果は「真」の場合は「True」、「偽」の場合 …

オブジェクトの書式をクリアする(ClearFormats メソッド)

ClearFormats メソッド 対象となるオブジェクトの書式(スタイル)を初 …

RSet 関数・LSet 関数 例1
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)

RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …

日付時刻:日付時刻データを計算( DateAdd 関数 )

DateAdd 関数(日付・時刻の値を加算・減算結果を取得) 【書式】 resu …

ThisCell プロパティ
ユーザー定義関数:セルを取得する(ThisCell プロパティ)

入力されたセルを取得する ワークシート上で使用する Function プロシージ …

四捨五入・切り上げ・切り捨て・丸め(Round 関数 他)

Round 関数(丸め)の使い方 【書式】 value = Round ( ex …

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

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