INDIRECT 関数

Excel 2007+

概要

INDIRECT 関数は、指定された文字列を実際のセル参照として解釈し、そのセルの値または範囲を返します。数式内で動的にセル参照を作成し、柔軟なデータ参照を実現します。

構文

INDIRECT(参照文字列, [参照形式])

パラメータ

パラメータ タイプ 必須 説明
参照文字列 String はい A1形式、R1C1形式、名前付き範囲を含む文字列を指定。外部参照時は対象ブックを開く必要あり。
参照形式 Boolean いいえ 省略時はA1形式。FALSEを指定するとR1C1形式として解釈。

INDIRECT関数の使用

INDIRECT関数は、文字列で指定された参照を実際のセル参照として扱う強力な関数です。動的に行番号や列文字を結合して参照を作成したり、名前付き範囲を活用したりできます。データ集計や動的レポート作成で特に有用です。

INDIRECTの一般的な例

基本的な直接参照

=INDIRECT(A1)

A1セルに'B2'と入力されている場合、B2セルの値を返します。

文字列結合による動的参照

=INDIRECT("B"&ROW())

現在の行番号を使ってB列の同じ行を参照します。

名前付き範囲の参照

=INDIRECT(A4)

A4に名前付き範囲名'高橋'が入っている場合、その範囲の値を返します。

外部シート参照

=INDIRECT("Sheet2!A1")

Sheet2のA1セルを文字列で指定して参照します(Sheet2が開いている必要あり)。

よくある質問

参照先のブックを開いた状態で使用する必要があります。閉じていると#REF!エラーが発生します。

A1形式は固定セル参照(A1、B2等)、R1C1形式は相対参照(R1C1等)。2番目の引数で指定します。

いいえ、Excel Web Appでは外部参照はサポートされていません。

一般的なエラーと解決策

#REF! エラー

Cause: 無効な参照文字列、外部ブックが閉じている、範囲外参照

Solution: 参照文字列を確認し、外部ブックを開いてください。行数1,048,576、列XFD以内に収めてください。

#VALUE! エラー

Cause: 参照形式引数が不適切

Solution: 2番目の引数をTRUE/FALSEの論理値にしてください。

予期しない結果

Cause: 文字列内のスペースや特殊文字

Solution: 参照文字列をダブルクォーテーションで正しく囲んでください。

注記

  • 行数の上限:1,048,576行、列の上限:XFD(16,384列)を超える参照は#REF!エラーになります。
  • 計算式ではないため、参照先セルの値が変更されても自動更新されません。
  • 大量データ処理では性能に影響が出る場合があります。
  • INDEX関数と組み合わせることで、より高速な代替手段が可能です。

互換性

利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365

利用不可:

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+