【Excel】OFFSET関数で指定したセルを基準にして、そこから指定した行数と列数だけ移動したセルの値を参照する
OFFSET関数とは
ExcelのOFFSET関数は、指定したセルを基準にして、そこから指定した行数と列数だけ移動したセルの値を参照する関数です。動的なセル参照を実現するために役立ちます。
OFFSET関数の構文
OFFSET関数の基本的な構文は次のとおりです:
=OFFSET(基準セル, 行数, 列数, [高さ], [幅])
- 基準セル: 参照の基点となるセル
- 行数: 基準セルからの行の移動数(正の数で下方向、負の数で上方向)
- 列数: 基準セルからの列の移動数(正の数で右方向、負の数で左方向)
- 高さ(省略可): 取得する範囲の行数(省略時は1行)
- 幅(省略可): 取得する範囲の列数(省略時は1列)
基本的な使い方
例えば、セルA1を基準にして2行下、1列右のセルを参照する場合:
=OFFSET(A1, 2, 1)
これは、セルB3の値を取得します。
実践的な使用例
動的な範囲選択
例えば、A1:A10の範囲の最後の値を取得するには:
=OFFSET(A1, COUNTA(A1:A10)-1, 0)
可変範囲の合計
例えば、直近5日分の売上を合計する場合:
=SUM(OFFSET(A1, COUNTA(A:A)-5, 0, 5, 1))
OFFSET関数の注意点
OFFSET関数は計算負荷が高くなりやすいため、大量のデータで使用すると処理速度が低下する可能性があります。その場合は、INDEX関数やINDIRECT関数などの代替手段を検討するとよいでしょう。