Home » Excel VBA Rangeオブジェクト » Rangeオブジェクトを返すRangeプロパティには引数を指定できるものとできないものがある

Rangeオブジェクトを返すRangeプロパティには引数を指定できるものとできないものがある

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2107 ビルド14228.20204 Microsoft Store)

オブジェクトブラウザーで「Range」を検索した結果

Excel VBAのRangeは、最重要なオブジェクトでありつつ、理解の難しいオブジェクトでもあります。

戻り値がRangeオブジェクトとして定義されている「Range」という名前のプロパティは複数のクラスに存在し、引数を指定できるものとできないものとがあります。

このことが、Rangeオブジェクトの理解を難しくする要因となっているようにも感じたので、分類した一覧を作成しておきます。

[スポンサードリンク]

引数を指定しなければならないRangeプロパティを持つクラス一覧

以下の3つのクラスに用意されているRangeプロパティには、引数を2つ指定でき、第1引数は必須です。

  • Application
  • Range
  • Worksheet

Excel.Worksheet.Range

オブジェクトブラウザーの詳細ペインで、引数はいずれも「(Cell1, [Cell2])」と定義されていることを確認できます。

こちらのRangeプロパティが、Excel VBAの入門書でも必ず取り上げられるものです。

引数を指定できないRangeプロパティを持つクラス一覧

以下の7つのクラスに用意されているRangeプロパティには、引数を指定できません。

  • AllowEditRange
  • AutoFilter
  • Hyperlink
  • ListColumn
  • ListObject
  • ListRow
  • PivotCell

こちらは入門書では取り上げられないことも多いのですが、ListObjectオブジェクトをお使いなら、よくお世話になっているはずです。

Excel.ListObject.Range

こちらはいずれもオブジェクトブラウザーの詳細ペインに「Property Range As Range」と表示されています。

最終更新日時:2021-09-05 06:48

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » Rangeオブジェクトを返すRangeプロパティには引数を指定できるものとできないものがある

「Excel VBA Rangeオブジェクト」の記事一覧

検索


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

.