OFFSET関数とOffsetプロパティ
ワークシートで使うOFFSET関数とVBAのOffsetプロパティはどちらも相対的にセル範囲を参照するが、使い方が少し違う。
OFFSET関数のほうは、
OFFSET(基準,行数,列数,高さ,幅)
と高さと幅を指定できるのに対し、プロパティのほうは、
object.Offset(行数,列数)
と、とてもシンプル。objectは関数の基準にあたる部分。高さと幅はOffsetでは指定できないので、Resizeプロパティを使う。
例えば、
OFFSET($H$1:$H$3,0,-1,3,1)
という関数をVBAのコードにすると
Range("$H$1:$H$3").Offset(0,-1).Resize(3,1)
になる。結果はどちらもRange("$G$1:$G$3")を表している。
