即効テクニック |
対象セル範囲を基準に、指定した行数・列数分だけ移動した、相対セルを参照します。移動する方向については、次の図を参照してください。行方向、あるいは列方向だけの移動も可能です。 構文 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