動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2107 ビルド14228.20204 Microsoft Store)
Excel VBAのRangeは、最重要なオブジェクトでありつつ、理解の難しいオブジェクトでもあります。
戻り値がRangeオブジェクトとして定義されている「Range」という名前のプロパティは複数のクラスに存在し、引数を指定できるものとできないものとがあります。
このことが、Rangeオブジェクトの理解を難しくする要因となっているようにも感じたので、分類した一覧を作成しておきます。
[スポンサードリンク]
引数を指定しなければならないRangeプロパティを持つクラス一覧
以下の3つのクラスに用意されているRangeプロパティには、引数を2つ指定でき、第1引数は必須です。
- Application
- Range
- Worksheet
オブジェクトブラウザーの詳細ペインで、引数はいずれも「(Cell1, [Cell2])」と定義されていることを確認できます。
こちらのRangeプロパティが、Excel VBAの入門書でも必ず取り上げられるものです。
引数を指定できないRangeプロパティを持つクラス一覧
以下の7つのクラスに用意されているRangeプロパティには、引数を指定できません。
- AllowEditRange
- AutoFilter
- Hyperlink
- ListColumn
- ListObject
- ListRow
- PivotCell
こちらは入門書では取り上げられないことも多いのですが、ListObjectオブジェクトをお使いなら、よくお世話になっているはずです。
こちらはいずれもオブジェクトブラウザーの詳細ペインに「Property Range As Range」と表示されています。
最終更新日時:2021-09-05 06:48
[スポンサードリンク]
- Newer:『ライティングの哲学』を読んでPython超入門も執筆当初はパワポだったことを思い出したので
- Older:Pythonで別のブックにシートをコピー(複製)するには?-xlwings.Sheet.copy()メソッド
Home » Excel VBA Rangeオブジェクト » Rangeオブジェクトを返すRangeプロパティには引数を指定できるものとできないものがある