【Excel】セルに入力したシートを参照先にする

シート名ごとに合計を表示するシートがあります。

合計値を表示する場合。通常は合計値のアドレスを「参照先シート名!参照先アドレス」の形で指定する必要があります。

ただ、この方法だとオートフィルやコピーした際に参照先シート名を自動的に変えることができません。なのでシート名だけ入力し直す必要があります。

大量にある場合はいちいち直すのが面倒ですよね?

今回は、セルに入力されたシート名を参照先にする方法を紹介します。

参照方法

通常の場合

以下の数式を使用することで、セルに入力されたシート名を参照できます。

=INDIRECT(参照先シート名が記載されたセル & "!" & "参照先アドレス")

=INDIRECT(A2 & "!" & "A6")

オートフィルを使用して参照先アドレスを変更可能にする場合

オートフィルで参照先アドレスを動的に変えたい場合は、以下の数式を使用します。

参照先が1セルのみ

=INDIRECT(参照先シート名が記載されたセル & "!"& ADDRESS(ROW(参照先アドレス),COLUMN(参照先アドレス)))

=INDIRECT($A$2&"!" & ADDRESS(ROW(A3),COLUMN(A3)))

参照先が連続している場合

=INDIRECT(参照先シート名が記載されたセル & "!" & ADDRESS(ROW(参照先の開始アドレス),COLUMN(参照先の開始アドレス)) & ":" & ADDRESS(ROW(参照先の終了アドレス),COLUMN(参照先の終了アドレス)))

=INDIRECT($A$2 &"!" & ADDRESS(ROW(A3),COLUMN(A3)) & ":" & ADDRESS(ROW(A5),COLUMN(A5)))
ブログランキング
PVアクセスランキング にほんブログ村
タイトルとURLをコピーしました