Excel関数入門:OFFSET関数の使い方【基準セルから指定した範囲を参照】

Excelでデータを扱うとき、「基準となるセルから行や列をずらした位置のセルを参照したい」という場面があります。そんなときに便利なのが OFFSET関数 です。OFFSET関数を使えば、セル参照を動的に変更できるので、集計やグラフ作成など幅広い用途に活用できます。


OFFSET関数とは?

OFFSET関数は、基準セルから指定した行数・列数だけ離れた範囲を参照する関数です。行や列の数を数式で指定すれば、セル範囲を動的に変えられます。


書式

=OFFSET(基準, 行数, 列数, [高さ], [])

引数説明
基準開始セルを指定します。
行数基準から移動する行の数(正数で下方向、負数で上方向)。
列数基準から移動する列の数(正数で右方向、負数で左方向)。
高さ(任意)返す範囲の行数。省略すると1行になります。
(任意)返す範囲の列数。省略すると1列になります。

使用例

  1. 単一セルを参照 =OFFSET(A1, 2, 3) → A1から2行下、3列右のセル(D3)を参照します。
  2. 範囲を参照 =OFFSET(A1, 1, 1, 2, 3) → A1から1行下、1列右の位置を左上のセルとし、縦2行×横3列の範囲を参照します。
  3. 動的な範囲指定 =SUM(OFFSET(A1, 0, 0, 5, 1)) → A1から下に5行の範囲を合計します。

活用例

  • 動的なグラフ作成
    データの行数が増えても自動でグラフ範囲を拡張可能。
  • 柔軟な集計範囲の設定
    特定のセルを基準に、参照範囲を数式で切り替えられます。
  • 名前の定義と組み合わせ
    OFFSETで作った範囲を「名前の定義」に使えば、動的な名前付き範囲として利用可能。

注意点

  1. 結果はセルの参照
    OFFSET関数自体は値を返さず、参照を返します。
  2. 計算負荷に注意
    大きなデータで多用すると、再計算が遅くなることがあります。
  3. 負の値も使える
    行数・列数を負の値にすれば上や左に移動できます。

関連関数

  • INDEX関数:セル参照を返すが、OFFSETより計算が軽い
  • INDIRECT関数:文字列で指定した参照を返す
  • MATCH関数:検索値の位置を返す

まとめ

OFFSET関数は、基準セルから行・列をずらした位置の範囲を参照できる便利な関数です。

  • 書式: =OFFSET(基準, 行数, 列数, [高さ], [幅])
  • 動的な範囲指定やグラフ作成に活用可能
  • 計算負荷が大きくなることがあるので使用は計画的に