オーロラさんの勉強帳

33歳、未経験からIT業界へ。SESのロースキル客先常駐勤務。データベース、Excel、Excel VBA、ネットワーク、LinuxなどIT関連のことを主に書いていきます。

VBA 再入門12 セルの指定part2(ActiveCell・Selection)

 

ActiveCellプロパティ

ActiveCellプロパティは、アクティブセルを参照するRangeオブジェクトを取得します。

以下の例ではExcelでセルA1:B7を選択している状態で、ActiveCellに文字列「選択中」という文字を代入しています。

f:id:auroralights:20201126012553p:plain

f:id:auroralights:20201126012514p:plain

 

Selectionプロパティ

Selectionプロパティは選択しているセル範囲を参照するRangeオブジェクトを取得します。Selectionプロパティはセルだけではなく、図形が選択されている場合は図形を参照します。

以下の例ではExcelでセルA1:B7を選択している状態で、Selectionに文字列「選択中」という文字を代入しています。

f:id:auroralights:20201126013242p:plain

f:id:auroralights:20201126013223p:plain

 

Slectitonプロパティはマクロ記録でセルの操作で、アクティブセル・選択中のセル範囲として記録されます。

 

ActiveCellプロパティとSelectionプロパティの違い

単一セルを選択している場合

単一のセルを選択しているときは、ActiveCell、Selectionともに同じセルを参照します。

単一のセルを選択している場合は、以下の2つのコードは同じ結果となります。

f:id:auroralights:20201126014132p:plain

f:id:auroralights:20201126014043p:plain

 

複数セルが選択されている場合

複数セルが選択されている場合は、ActiveCellは現在アクティブな単一セル、Selectionはセル範囲全部のセルを参照します。

以下のような状態の場合、B6がActiveCell、B2:C6がSelectionの範囲になります。

f:id:auroralights:20201126014546p:plain