Excel VBAでセルの選択位置を移動する:Offset

ある選択範囲を基準として他の選択範囲を指定したい場合には Offset プロパティが利用できます。ここでは、Offset プロパティの使い方について説明します。

Offset プロパティの使い方

Offset プロパティの構文は以下の通りです。

行の移動値はプラスが下方向、マイナスが上方向になります。列の移動値はプラスが右方向、マイナスが左方向になります。

選択位置を移動する

たとえば、セルA1から下に2、右に3移動した位置のセルを選択するには以下のように記述します。

上のプログラムを実行するとセルD3が選択された状態になります。

vba_offset1

マイナスを使った例を見てみましょう。

以下はセルE8から上に5、左に3移動した位置のセルを選択する例です。

上のプログラムを実行するとセルB3が選択された状態になります。

vba_offset2

もしA列よりも左、1行目よりも上になるような値を指定した場合は、エラーになるので注意してください。

vba_offset3

範囲選択の位置を移動する

セルの範囲選択の場合も同様に Offset で処理できます。

Offset は移動を行うだけなので、選択範囲の大きさも元のセル範囲と同じになります。

vba_offset4

現在の選択範囲を移動する:Selection

Selection を使うと現在選択されているセル範囲を取得することができます。

以下は、現在の選択範囲の2つ右の位置を選択する例です。

vba_offset6


Welcome to UX MILK

UX MILKはより良いサービスやプロダクトを作りたい人のためのメディアです。

このサイトについて