INDIRECT関数を活用して文字列からセル参照を作成する方法
Microsoft Excelでは、INDIRECT関数を使用することで、文字列からセル参照を作成し、動的なセル参照を活用することができます。INDIRECT関数は、セル参照を文字列で指定する際に非常に便利です。以下では、INDIRECT関数の使用方法や具体的な使用例を紹介します。
使用方法
ステップ1: INDIRECT関数の書式を理解する
INDIRECT関数の書式は以下の通りです:
=INDIRECT(文字列)
文字列は、セル参照を示す文字列を指定します。
ステップ2: セル参照を文字列で指定する
INDIRECT関数では、セル参照を文字列で指定します。たとえば、セルB2の値を参照したい場合、以下のように書きます:
=INDIRECT("B2")
ステップ3: 文字列を組み立てることによる動的なセル参照の作成
INDIRECT関数を使って文字列を組み立てることで、動的なセル参照を作成することができます。たとえば、セルA1に数値を入力し、セルB1にはセルA1の参照を文字列で指定したい場合、以下のように書きます:
=INDIRECT("A" & 1)
この場合、セルB1にはセルA1の値が表示されます。
ステップ4: 範囲を指定して動的にデータを参照する
INDIRECT関数を使用すると、範囲を指定して動的にデータを参照することも可能です。たとえば、セルA1からA5までの範囲の合計値を計算したい場合、以下のように書きます:
=SUM(INDIRECT("A1:A5"))
この場合、セルA1からA5までの値の合計が表示されます。
使用例
使用例1: 条件に基づいてデータを抽出する
データシートにおいて特定の条件に基づいてデータを抽出する場合、INDIRECT関数を活用することができます。たとえば、セルC1に抽出したいデータ列のヘッダーを指定し、セルC2に条件を入力した場合、以下のように書きます:
=FILTER(INDIRECT("A1:D10"),INDIRECT("A1:D1")=C1)
この場合、セルC1のヘッダーに一致するデータのみを抽出します。
使用例2: シート名を参照して動的なデータを表示する
異なるシートに同じ形式のデータがある場合、INDIRECT関数を使ってシート名を参照して動的なデータ表示を行うことができます。たとえば、セルA1に参照したいシートの名前を指定し、セルB1にはセルA1の参照を文字列で指定したい場合、以下のように書きます:
=INDIRECT(A1 & "!B1")
この場合、セルA1で指定したシートのセルB1の値が表示されます。
まとめ
INDIRECT関数を活用することで、文字列からセル参照を作成し、動的なセル参照を実現することができます。これにより、特定の条件に基づいてデータを抽出したり、複数のシート間でデータを参照したりすることが容易になります。Excelの使い方をより効率的にするために、INDIRECT関数を上手に活用してみてください。