Home » エクセルマクロ・Excel VBAの使い方 » VBAのコレクションはItemとCountを必ず持つ

対象:Excel2007, Excel2010, Excel2013

「macro コレクションとは」
「vba workbooksコレクションとは」
という検索キーワードを元にして、VBA(Visual Basic for Applications)の、コレクションオブジェクトについて、

  • 同じ種類のオブジェクトをまとめたものがコレクション
  • コレクション名は単一オブジェクトの名前の複数形になっていることが多い
  • コレクションは単一オブジェクトとは違うプロパティ・メソッドを持っていることが多い

ということを「VBAのコレクションとは」という記事にまとめています。

「コレクションは単一オブジェクトとは違うプロパティ・メソッドを持っていることが多い」
という件について、補足があります。コレクションオブジェクトが、必ず持っているプロパティやメソッドがあるのです。

コレクションは、Countプロパティと、ItemプロパティまたはItemメソッドを必ず持っています。

[スポンサード リンク]

コレクションオブジェクトは必ずCountプロパティを持つ

同じ種類のまとまりであるコレクションには、同種のオブジェクトがコレクションの中にいくつ含まれているのかを返すCountプロパティが必ず用意されています。

Workbooksコレクションは、単一オブジェクトであるWorkbookオブジェクトをいくつ持っているかを返すCountプロパティを持っています。

VBAのコレクションはItemとCountを必ず持つ

WorkSheetsコレクションは単一オブジェクトであるWorkSheetオブジェクトをいくつ持っているかを返すCountプロパティを持っています。

VBAのコレクションはItemとCountを必ず持つ

Shapesコレクションは単一オブジェクトであるShapeオブジェクトをいくつ持っているかを返すCountプロパティを持っています。

VBAのコレクションはItemとCountを必ず持つ

これまでコレクションのCountプロパティについて意識したことがなかったという方は、是非ご自分の手を動かしてオブジェクトブラウザーやヘルプで確認してみてください。

コレクションオブジェクトは必ずItemプロパティまたはItemメソッドを持つ

もう一つはItemです。

同じ種類のまとまりであるコレクションから、単一オブジェクトを取得するためのItemプロパティまたはItemメソッドが、コレクションオブジェクトには必ず用意されています。

Workbooksコレクションは単一オブジェクトであるWorkbookオブジェクトを返すItemプロパティを持っています。

VBAのコレクションはItemとCountを必ず持つ

WorkSheetsコレクションは単一オブジェクトであるWorkSheetオブジェクトを返すItemプロパティを持っています。

VBAのコレクションはItemとCountを必ず持つ

Shapesコレクションは単一オブジェクトであるShapeオブジェクトを返すItemメソッドを持っています。

VBAのコレクションはItemとCountを必ず持つ

先のCountは、必ずプロパティでしたが、Itemはプロパティの場合とメソッドの場合があります。

ExcelやAccessのVBAの場合、Itemはプロパティとして作られていることが以前は多かったのですが、どこかの時点でMicrosoftは設計方針を変更して、最近はItemをメソッドとして作るように変わっているようです。Excel VBAより歴史の浅いPowerPoint VBAの場合、Itemはほとんどメソッドとして作られていてExcel VBAでも比較的新しいコレクションの場合Itemはメソッドになっています。

Itemについてもこれまで意識したことがなかったという方は、ご自分の手を動かしてオブジェクトブラウザーやヘルプで確認してみてください。

▼2017年6月10日にオブジェクトブラウザーの使い方とともに、VBAのオブジェクト式の文法・オブジェクト変数等についてとことん解説するセミナー『Excel VBA講座 オブジェクト式解説編』を開催します。
オブジェクト式解説編

Home » エクセルマクロ・Excel VBAの使い方 » VBAのコレクションはItemとCountを必ず持つ

[スポンサード リンク]
[スポンサード リンク]

TrackBack:2

TrackBack URL
VBAでテーブル・ListObjectの有無を確認する from インストラクターのネタ帳
ListObjectsコレクションオブジェクトのCountプロパティを調べて「0」ならばListObjectオブジェクト・テーブルは存在していなと判定できます。
VBAでグラフシートの有無を判定する from インストラクターのネタ帳
アクティブなブックにグラフシートが存在するかどうかを判定するExcel(エクセル)マクロをご紹介しています。

Home » エクセルマクロ・Excel VBAの使い方 » VBAのコレクションはItemとCountを必ず持つ

「エクセルマクロ・Excel VBAの使い方」の記事一覧

検索

最近じっくりと読まれている記事

.