Excelで、A2セルに入力されている日付に対応するシート名を参照し、そのシートのB2セルの数字を抽出したい場合があります。このようなケースでは、INDIRECT関数を用いることで動的にシート参照を行うことが可能です。
INDIRECT関数を使った基本的な方法
例えば、A2に日付が入っていて、その日付を文字列化したシート名(例:2026-05-16)に対応するB2の値を取得したい場合、以下のような式を使用します。
=INDIRECT("'" & TEXT(A2,"yyyy-mm-dd") & "'!B2")
この式では、TEXT関数で日付をシート名形式に変換し、INDIRECT関数でそのシートのB2セルを参照しています。
注意点
1. シート名は日付形式と完全に一致させる必要があります。
2. シートが存在しない場合、#REF! エラーが表示されますので、IFERROR関数で処理を追加すると安全です。例:=IFERROR(INDIRECT("'" & TEXT(A2,"yyyy-mm-dd") & "'!B2"),"")
実務例
売上管理表やスケジュール表など、日付ごとにシートを分けている場合に、特定の日付の情報を集計するのに便利です。A列に日付を入力するだけで、自動的に対応シートの値を取得できます。
まとめ
Excelで日付をキーにシートを参照してB2セルの値を抽出するには、INDIRECT関数とTEXT関数を組み合わせる方法が便利です。これにより、複数シートの情報を効率よく集計できます。


コメント