構文
構文は以下の通りです。
WorksheetFunction.Offset(参照セル, 行数, 列数)
解説
WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。Offset関数は、基準のセルから指定した行と列だけ移動したセルを指します。参照セルには、基準となるセルを指定します。行数には、上下に何行移動するか(上はマイナス、下はプラス)を指定します。列数には、左右に何列移動するか(左はマイナス、右はプラス)を指定します。
プログラミング例
具体的なプログラミング例を紹介します。
Sub オフセットの使い方例()
Dim 基準セル As Range
Dim 新しいセル As Range
' 基準となるセルをA1に設定
Set 基準セル = Range("A1")
' 基準セルから2行下、3列右のセルを取得
Set 新しいセル = WorksheetFunction.Offset(基準セル, 2, 3)
' 新しいセルに「こんにちは」と入力
新しいセル.Value = "こんにちは"
End Sub
Dim 基準セル As Range
Dim 新しいセル As Range
' 基準となるセルをA1に設定
Set 基準セル = Range("A1")
' 基準セルから2行下、3列右のセルを取得
Set 新しいセル = WorksheetFunction.Offset(基準セル, 2, 3)
' 新しいセルに「こんにちは」と入力
新しいセル.Value = "こんにちは"
End Sub
上記のプログラムは、「A1」のセルを基準セルとし、その基準セルから2行下、3列右に移動したセルを新しいセルとして取得します。最後に、新しいセルに「こんにちは」という文字を入れています。
まとめ
Offset関数を使って、基準のセルから別のセルを簡単に指定する方法を紹介しました。これを使うと、セルの位置を自由に動かして作業ができます。