【Excel】任意のワークシートのセルをスマートに参照する方法【INDIRECT関数】
皆さんは、別ワークシートにあるセルをどのように参照していますか? まず、一般的な方法から説明します。
まず、(1)別ワークシートで、田中さんの通信簿を作成しました。(2)つぎに、別のシートからその数値をセル参照します。(3) つづいて、鈴木さんの通信簿を別ワークシートとして追加し、(4)そのセルを参照します。これらのように必ず、ワークシートを追加してから、セル参照する、という順序をとります。
ここで、ワークシートの追加ごとに、それに続く、セルを参照する作業を課題と考えています。セル参照が多岐にわたっている場合は特に煩わしいですし、機械的な作業ですので、マシンに任せるのが一番です。
今回、ご紹介する方法を以下に示します。対象(参照)セルのアドレスを文字列として作成し、INDIRECT関数で囲みます。セルに数値が表示されました。なお、セルのアドレスの文字列は、ワークシート名を田中とし、A列にセルアドレスを記入しました。
つぎに、以下のようにC列をD列にドラッグして、数式を入力します。D列はエラー(#REF!)が表示されます。
つづいて、以下に示すように、鈴木さんのワークシートを追加します。追加と同時に、エラー表示が数値に変わりました。つまり、ワークシート追加の順序は不問です。
ここで、以下のようにセルC2を鈴木に代えてみます。すると列C2の通信簿が更新されました。つまり、セルの2行の記入によって、参照するワークシートを指定しています。このように、簡単に参照するセル群を一度に変えることができます。従来の場合、変更方法を思い出すところから始める必要があるのに比べて、ご紹介する方法は非常に直感的であり、簡単な作業です。
別のExcelファイルからワークシートをコピーして持ってくる場合などに有効です。
なお、INDIRECT関数の簡単な使い方につきましては、関連サイトをご紹介します。