command lab
  • TOP
  • BLOG
  • Excel

  • 【エクセル】INDIRECT関数の使い方をわかりやすく解説

【エクセル】INDIRECT関数の使い方をわかりやすく解説

INDIRECT関数の使い方について解説します。ページ下部にはおすすめの解説動画を載せています。

INDIRECT関数とは

ExcelのINDIRECT関数は、参照を文字列として指定し、有効な参照を返すという特殊な関数です。INDIRECTは、テキスト値を有効なセル参照に変換する場合に便利です。

INDIRECT関数の構文

=OFFSET(参照文字列,参照形式
  • 参照文字列:参照として定義されている名前が入力されているセルへの参照、または文字列としてのセルへの参照を指定します。
  • 参照形式:省略可能です。参照文字列で指定されたセルに含まれる参照の種類を、論理値 (A1 形式 = TRUE もしくは省略、R1C1 形式 = FALSE) で指定します。デフォルトではA1形式となっているので、特殊な参照形式を使っていない限りは省略しても問題ないです。

使用上の注意

INDIRECT関数は、指定されたテキスト文字列から有効な参照を返します。INDIRECT関数は、テキストの値を有効なセル参照に変換する場合に便利です。たとえば、文字列からセル「A1」への参照を作成するには、次のように INDIRECT を使用できます。

= INDIRECT ( "A1" )  // A1 への参照を返します

INDIRECT の目的は最初は不可解に思えるかもしれません (つまり、適切な参照を提供できるのになぜテキストを使用するのでしょうか?) が、テキストから参照を作成する機能が役立つ状況は数多くあります。例えば下記のような状況がそれに値します。

  • 参照するシート名が可変する場合
  • 行や列を削除しても自動で参照先が変わらないように固定参照したい場合

注: INDIRECT は揮発性関数(シートに変更があった際に常に再計算される関数)であり、大規模または複雑なワークシートでパフォーマンスの問題を引き起こす可能性があります。

ワークシート名が可変する場合の対応

ワークシート名が定まっていない場合は次のように設定することでシート名を可変的に設定することができます。

= INDIRECT ( C2 & "!A1" )  // C2 のシート名は可変

上記のC2に入力される文字列は、「!A1」と結合するので「apple!A1」のようになります。参照文字列のルールとして「!」の前の文字列はシート名を表すので「apple」シートのA1の文字列を参照して返します。よって「C2」をドロップダウンリストでシート名 を選択できるすれば、シートを選択して参照のする値を可変することが可能になります。

注:この例で説明されているように、句読点またはスペースを含むシート名はダブルクォーテーション (“) で囲む必要があります。これは INDIRECT関数に固有のものではありません。同じことがすべての式に当てはまります。

行や列を削除しても自動で参照先が変わらない固定参照

INDIRECT によって作成された参照は、セル、行、または列が挿入または削除されても変更されません。たとえば、次の数式は、その範囲の行が削除または挿入された場合でも、列 A の最初の 100 行を常に参照します。

= INDIRECT ( "A1:A100" )  // 変更されない

ポイントまとめ

  • INDIRECT によって作成された参照はリアルタイムで評価され、参照の内容が表示されます。
  • 参照文字列が別のブックへの外部参照である場合、そのブックが開かれている必要があります。
  • INDIRECT は揮発性関数であり、パフォーマンスの問題を引き起こす可能性があります。

おすすめの解説動画

INDIRECT関数について丁寧に解説している動画です。非常にわかりやすく解説しているのでおすすめです。

ショートカットキーの練習できます

当サイトはショートカットキーの練習を実際の動きを確認しながら練習できる機能がついています。繰り返し指を動かして練習ができるので、ゲーム感覚で遊んでいくうちに自然とショートカットキーが使えるようになれます。ショートカットキーは暗記するよりも実際に手を動かして練習していったほうが習得が早くなるので、是非当サイトで定期的に練習してみてください。下記のSTARTキーを押下すると練習を始められます。

下のスタートボタンを押して練習モードに入ります。
STARTSTOP
※入力モード切り替え ctrl + shift + alt + space
PRE
NEXT
ガイドモード
リピートモード

※推奨ブラウザ Google Chrome

PUSH ENTER

関連記事