「VBA ActiveCellとは」
「マクロ コード Activecell とは」
といった検索で、このサイト『インストラクターのネタ帳』へ時折アクセスがあります。
Excel VBAで見かけるコード「ActiveCell」について、調べていた方による検索です。
ActiveCellとはアクティブセルを表すRangeを返すプロパティ
結論からお伝えすると、
アクティブな1個のセルを表すRangeオブジェクトを取得するためのプロパティ
です。
拙著『いちばんやさしいExcel VBAの教本』の、「Lesson 52 プロパティは2種類あることを知っておきましょう」でお伝えしているオブジェクトを取得するためのプロパティに該当します。
アクティブセルは1個
Excel上でアクティブなセルは1個しか存在しませんから、ActiveCellプロパティで返されるRangeオブジェクトで参照できるセルも、必ず1個です。
例えばA1:C3セルが選択されているシートがアクティブであっても、アクティブセルは1個です。下図のような場合、
A1:C3セルが選択されていますが、アクティブセルはC2セル1個です。この場合ActiveCellプロパティは、C2セルを表すRangeオブジェクトを返します。
Application.ActiveCellとWindow.ActiveCell
オブジェクトブラウザーで「ActiveCell」を完全一致検索するとわかるとおり、
ApplicationオブジェクトとWindowオブジェクトに、ActiveCellプロパティは用意されています。
ですから原則的には、
Application.ActiveCell
ActiveWindow.ActiveCell
Windows(1).ActiveCell
Application.ActiveWindow.ActiveCell
Application.Windows(1).ActiveCell
あるいは、ライブラリ名も含めて、
Excel.Application.ActiveCell
Excel.ActiveWindow.ActiveCell
Excel.Windows(1).ActiveCell
Excel.Application.ActiveWindow.ActiveCell
Excel.Application.Windows(1).ActiveCell
などと書くはずですが、ActiveCellプロパティは上位のオブジェクトへの参照を省略して書けるグローバルメンバーですから、
いきなり「ActiveCell」と書き始めるのが一般的です。
最終更新日時:2021-09-10 13:26
- Newer:ActiveWindowとは
- Older:表の中の表を削除するWordマクロ
Home » Excel VBA Rangeオブジェクト » ActiveCellとは1個のアクティブなRangeを返すプロパティ