HOME > 即効テクニック > Excel VBA > セル操作関連のテクニック > 相対的なセルを参照する(Offsetプロパティ)

即効テクニック

セル操作関連のテクニック

相対的なセルを参照する(Offsetプロパティ)

(Excel 2000)
対象セル範囲を基準に、指定した行数・列数分だけ移動した、相対セルを参照します。移動する方向については、次の図を参照してください。行方向、あるいは列方向だけの移動も可能です。

 構文  Object.Offset(RowOffset, ColumnOffset)     取得のみ

 設定項目        内容
  Object          Rangeオブジェクト
  RowOffset       移動する行数を表す整数[省略可能]
  ColumnOffset    移動する列数を表す整数[省略可能]
●サンプル1●
Sub OffsetSamp1()

    '----(1)
    Range("A2:E3").Offset(3, 2).Value = Range("A2:E3").Value
    '----(2)
    Range("A2:E3").Offset(3, 2).Select

End Sub
(1)のステートメントで、セルA2〜E3から下方向に3、右方向に2移動したセル範囲に元のセル範囲と同じ値を入力し、(2)でその範囲を選択しています。行方向のみ移動する場合、@のステートメントは次のいずれかになります。
    '----列方向の引数に0
    Range("A2:E3").Offset(3, 0).Value = Range("A2:E3").Value
   '----行方向のみ指定
    Range("A2:E3").Offset(3).Value = Range("A2:E3").Value
列方向のみ移動する場合は次のいずれかになります。
    '----行方向の引数に0
    Range("A2:E3").Offset(0, 2).Value = Range("A2:E3").Value
    '----列方向のみ指定
    Range("A2:E3").Offset(, 2).Value = Range("A2:E3").Value