Excel関数

【保存版】INDIRECT関数の基本から応用まで完全マスター



Excel INDIRECT関数の使い方完全ガイド

本記事について
この記事はAI技術を活用して、Excel操作に関する情報を整理・構成しています。
操作方法は執筆時点のものです。最新情報は公式サイトでご確認ください。

Excel INDIRECT関数の使い方完全ガイド

1. INDIRECT関数とは?(機能概要)

ExcelのINDIRECT関数は、文字列として指定されたセル参照を評価し、そのセルの内容を返す関数です。この機能により、動的にセル参照を変更することが可能となり、他のセルの値を基に計算やデータ処理を行うことができます。INDIRECT関数は特に、シート名や範囲名を動的に扱いたい場合に非常に便利です。

2. 基本的な構文と引数の説明

INDIRECT関数の基本的な構文は以下の通りです。


INDIRECT(ref_text, [a1])
    

引数の説明:

  • ref_text: 参照したいセルのアドレスを示す文字列。例えば、"A1"や"Sheet1!B2"のように指定します。
  • [a1]: (省略可能)TRUEまたはFALSEの値。TRUEの場合、A1スタイルの参照を使用し、FALSEの場合はR1C1スタイルの参照を使用します。デフォルトはTRUEです。

3. 実用的な使用例

3.1. 基本的なセル参照の動的取得

セルA1に「B2」と入力し、セルB2に「100」と入力したとします。セルC1に以下のINDIRECT関数を入力します。


=INDIRECT(A1)
    

この場合、C1の結果は「100」となります。A1を変更すれば、C1が参照するセルも動的に変更されます。

3.2. 複数シートからのデータ参照

シート1に「Sheet2」のB1セルの値を参照したい場合、セルA1に「Sheet2!B1」と入力し、セルB1に以下のINDIRECT関数を入力します。


=INDIRECT(A1)
    

これにより、Sheet2のB1セルの値がB1に表示されます。A1を変更することで、他のシートのセルを参照することも可能です。

3.3. 範囲名を使用した動的参照

範囲名「SalesData」を定義し、セルA1に「SalesData」と入力します。以下のようにINDIRECT関数を使用します。


=SUM(INDIRECT(A1))
    

これにより、SalesDataの範囲内のすべての数値の合計が計算されます。A1を変更することで、他の範囲名を動的に参照できます。

4. 他の関数との組み合わせ例

INDIRECT関数は他の関数と組み合わせて使用することで、さらに強力なデータ処理が可能になります。以下はその一例です。

4.1. VLOOKUP関数との組み合わせ

セルA1に「Sheet2」と入力し、セルB1に「Product1」と入力したとします。Sheet2には以下のようなデータがあると仮定します。


    A         B
    1  Product   Price
    2  Product1  50
    3  Product2  70
    

以下のVLOOKUP関数を使用して、動的に価格を取得することができます。


=VLOOKUP(B1, INDIRECT(A1 & "!A:B"), 2, FALSE)
    

これにより、B1に入力された商品名の価格が動的に取得できます。A1のシート名を変更することで、他のシートのデータを参照可能です。

5. エラーの対処法

INDIRECT関数を使用する際に、いくつかのエラーが発生することがあります。以下は代表的なエラーとその原因です。

5.1. #REF!

このエラーは、指定した参照が無効な場合に発生します。例えば、存在しないシート名を指定した場合です。参照を確認し、正しいシート名を入力する必要があります。

5.2. #NAME?

これは、指定された参照が無効である場合や、範囲名が定義されていない場合に発生します。範囲名が正しく設定されているか確認しましょう。

6. 業務での活用シーン

INDIRECT関数は、特に以下のような業務シーンでの活用が考えられます。

  • 動的なレポート作成: シート名やセル参照を変更することで、同じフォーマットの異なるデータセットを簡単に比較できます。
  • 複数のシートからのデータ集計: 各シートのデータを集約し、総合的な分析を行う際に便利です。
  • データの可視化: INDIRECT関数を使用して、動的にデータを取得し、グラフやチャートに反映させることができます。

7. まとめと関連関数の紹介

INDIRECT関数は、Excelの中でも非常に強力な関数であり、動的なセル参照を可能にします。データの集計や分析を行う上で、非常に役立つ機能です。これを利用することで、より効率的で柔軟なデータ処理が実現できます。

関連関数:

  • ADDRESS関数: セルのアドレスを生成する関数で、INDIRECT関数と組み合わせて使用できます。
  • OFFSET関数: 指定したセルからの相対的な位置にあるセルを取得する関数です。
  • INDEX関数: 指定した範囲内の特定の位置にある値を取得します。


-Excel関数