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

[スポンサードリンク]

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

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

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.