VBA 範囲またはセルのオフセット

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

masahiro yoshida

Last updated on 4月 24, 2022

Offset プロパティは、指定された入力セルまたは範囲からの相対的なセルまたは範囲を得るために使用されます。

Range オブジェクトで Offset を使用する

セル A1 が入力範囲である場合、セル B2 を選択するために、Range オブジェクトとOffset プロパティを利用して次のコードが使えます。

Range("A1").Offset(1, 1).Select

結果は次のようになります。

Using the Offset Property With the Range Object

構文を確認してみましょう。

Range.Offset(RowOffset、ColumnOffset)

正の整数は、Offsetに下と右に移動するよう指示します。負の整数は、上と左に移動します。 Offset プロパティは常に入力セルまたは範囲の左上のセルからカウントを開始します。

Cells オブジェクトで Offset を使用する

次のコードは、Cells オブジェクトと Offset プロパティを使用して、セル D4 が入力された場合にセル C3 を選択します。

Cells(4, 4).Offset(-1, -1).Select

セルのグループを選択する

Offsetプロパティを使って、セルグループを選択することもできます。次のコードは、入力範囲Range(“A1:A5”)の下7行、右3列の範囲を選択するものです。

Range("A1:A5").Offset(7, 3).Select

Range(“D8:D12”)が選択されました。

Using the Offset Property to Select a Group of Cells in VBA

vba-free-addin

VBAコード例アドイン

当サイトで紹介しているすべてのコード例に簡単にアクセス可能。

メニューから選択してクリックするだけで、コードがモジュールに直接挿入されます(.xlam アドイン)。

(インストール不要!)

無料ダウンロード

VBAコード例に戻る