基準のセルまたはセル範囲から指定された行数と列数だけシフトした位置にある高さと幅のセルまたはセル範囲の参照 (オフセット参照) を返します。返されるセル参照は、セル、セル範囲のいずれかの参照です。また、返されるセル参照の行数と列数を指定することもできます。
書式
OFFSET(基準,行数,列数,高さ,幅)
基準 基準となるセル範囲の参照を指定します。基準が、セルまたは隣接するセル範囲以外を参照する場合は、エラー値 #VALUE! が返されます。
行数 基準の左上隅のセルを上方向または下方向へシフトする距離を行数単位で指定します。行数に 5 を指定すると、オフセット参照の左上隅のセルは、基準の左上隅のセルから 5 行下方向へシフトします。行数に正の数を指定すると下方向へシフトし、負の数を指定すると上方向へシフトします。
列数 基準の左上隅のセルを左方向または右方向へシフトする距離を列数単位で指定します。列数に 5 を指定すると、オフセット参照の左上隅のセルは、基準の左上隅のセルから 5 列右方向へシフトします。列数に正の数を指定すると右方向へシフトし、負の数を指定すると左方向へシフトします。行数と列数で基準のセル範囲をシフトした結果、オフセット参照の左上隅のセルがワークシートの外へ出てしまう場合、エラー値 #REF! が返されます。
高さ オフセット参照の行数を指定します。高さは正の数である必要があります。
幅 オフセット参照の列数を指定します。幅は正の数である必要があります。
解説
-
参照する行または列がワークシートの端よりも外側になる場合、エラー値 #REF! が返されます。
-
高さまたは幅を省略すると、基準のセル範囲と同じ行数または列数であると見なされます。
-
OFFSET 関数は、実際にセルを移動させたり、選択対象を変更したりしないで、ただセル参照を返すだけです。OFFSET 関数は、セル参照を引数として使う関数と共に使います。たとえば、次の数式 SUM(OFFSET(C2,1,2,3,1)) では、セル C2 を基準とし、セル C2 から下方向に 1 行、右方向に 2 列シフトし、高さが 3 行で幅が 1 列のセル範囲の値を集計します。
使用例
使用例を新規のワークシートにコピーすると、計算結果を確認できます。
その方法は?
- 新しいブックまたはワークシートを作成します。
- ヘルプ トピックにある使用例を選択します (行番号および列番号を除く)。

ヘルプから使用例を選択する
- Ctrl キーを押しながら C キーを押します。
- ワークシートのセル A1 を選択し、Ctrl キーを押しながら V キーを押します。
- 計算結果と結果を返す数式の表示を切り替えるには、Ctrl キーを押しながら ` (アクサン グラーブ) キーを押すか、または [ツール] メニューの [ワークシート分析] をポイントし、[ワークシート分析モード] をクリックします。
|
|
| A |
B |
| 数式 |
説明 (計算結果) |
| =OFFSET(C3,2,3,1,1) |
セル F5 の値を表示します (0) |
| =SUM(OFFSET(C3:E5,-1,0,3,3)) |
セル範囲 C2:E4 を合計します (0) |
| =OFFSET(C3:E5,0,-3,3,3) |
セル参照がワークシート上にないため、エラー値が返されます (#REF!) |
|