Home » ExcelVBA Rangeオブジェクト » ActiveCellとは1個のアクティブなRangeを返すプロパティ

ActiveCellとは1個のアクティブなRangeを返すプロパティ

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

Excel.Global.ActiveCell

「VBA ActiveCellとは」
「マクロ コード Activecell とは」
といった検索で、このサイト『インストラクターのネタ帳』へ時折アクセスがあります。

Excel VBAで見かけるコード「ActiveCell」について、調べていた方による検索です。

[スポンサードリンク]

ActiveCellとはアクティブセルを表すRangeを返すプロパティ

結論からお伝えすると、

▼Excel VBAのActiveCellとは
アクティブな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」を完全一致検索するとわかるとおり、

オブジェクトブラウザーで「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プロパティは上位のオブジェクトへの参照を省略して書けるグローバルメンバーですから、

Excel.Global.ActiveCell

いきなり「ActiveCell」と書き始めるのが一般的です。

最終更新日時:2021-09-10 13:26

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » ActiveCellとは1個のアクティブなRangeを返すプロパティ

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

検索


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

.