Excelのvbaでactivecellを使用するにはどうすればよいですか?
VBA では、アクティブ セルは、現在アクティブなセルを表すプロパティです。セルを選択するかセルに移動し、この緑色のボックスがそのセルを覆う場合、ACTIVECELL プロパティを使用して VBA コードでそのセルを参照できます。それに付随するプロパティとメソッドがあります。
アクティブセルのプロパティを使用する
- キーワード「ActiveCell」を入力します。
- ピリオド (.) を入力して、リストからプロパティとメソッドを取得します。
- 使用するプロパティまたはメソッドを選択します。
- コードを実行して、アクティブ セルでアクティビティを実行します。
注意事項
- アクティブ セル プロパティを使用すると、現在開いているブックの数に関係なく、VBA はアクティブなブックのアクティブシート上のアクティブ セルを参照します。
- ActiveCell は、最終的には通常のセルのすべてのプロパティとメソッドを備えたセルです。
選択した範囲からセルをアクティブ化します
VBA コードを使用してセルをアクティブ化するには、「Activate」メソッドと「Select」メソッドの 2 つの方法を使用できます。
Sub vba_activecell() 'select and entire range Range("A1:A10").Select 'select the cell A3 from the selected range Range("A3").Activate 'clears everything from the active cell ActiveCell.Clear End Sub
上記のコードは、まず範囲 A1:A10 を選択し、次にそこからセル A3 をアクティブにし、最後にアクティブ セル (A3) からすべてをクリアします。
アクティブセルの戻り値
次のコードは、メッセージ ボックスを使用してアクティブ セルの値を返します。
MsgBox ActiveCell.Value
または、アクティブなセルの値を取得して別のセルに貼り付けたい場合。
Range("A1") = ActiveCell.Value
アクティブセルを変数に設定する
次の例のように、アクティブ セルを変数に設定することもできます。
Sub vba_activecell() 'declares the variable as range Dim myCell As Range 'set active cell to the variable Set myCell = ActiveCell 'enter value in the active cell myCell.Value = Done End Sub
ActiveCellの行番号と列番号を取得します。
アクティブ セルには、アクティブ セルの行番号と列番号を取得するために使用できる行と列のプロパティがあります。
MsgBox ActiveCell.Row MsgBox ActiveCell.Column
アクティブセルアドレスを取得する
address プロパティを使用して、アクティブ セルのアドレスを取得できます。
MsgBox ActiveCell.Address
上記のコードを実行すると、(前述したように) アクティブなブックのアクティブ シートのアクティブ セルのセル アドレスを示すメッセージ ボックスが表示されます。
オフセットを使用してアクティブ セルから移動
offset プロパティを使用すると、アクティブ セルから数行および数列離れたセルに移動できます。
ActiveCell.Offset(2, 2).Select
アクティブセル内の範囲を選択します
また、アクティブセルから範囲を選択することもできます。
Range(ActiveCell.Offset(1, 1), ActiveCell.Offset(5, 5)).Select