別シートを参照する
ちょっと別シートを参照したいというような場合は、=シート名!セル名 で参照できますが、 少し複雑な操作をしたい場合には、INDIRECT 関数を使った別シート参照方法が便利です。
INDIRECT関数の使い方 関数技32回
INDIRECT 関数で別シートを参照するには
INDIRECT関数は、指定した文字列への参照を返すExcelの検索と行列関数です。
どういうことかというと、文字列をExcelが計算に使えるようにセル範囲に変換してくれるというわけです。
指定した文字列は、セルに記載しても、直接入力してもOK。
今回は、INDIRECT関数で別シートの合計欄をまとめシートに表示する方法をご紹介します。
(サンプルファイルは、こちらから 2013関数技32回サンプルデータ)
別シートのセルをINDIRECT関数を使い文字列で参照する
合計を入力したいセルB4にINDIRECT関数を入力します。
INDIRECT関数は、直接入力するか、関数の挿入ボタンから関数の分類の検索/行列グループから見つけます。
![INDIRECT関数を入力](gazo2013/kan/2013-kan32_02.png)
INDIRECT関数は、直接入力するか、関数の挿入ボタンから関数の分類の検索/行列グループから見つけます。
![INDIRECT関数を入力](gazo2013/kan/2013-kan32_02.png)
B4セルに、シート”川口”のB9セルを指定したいのです。![INDIRECT関数を入力](gazo2013/kan/2013-kan32_03.png)
シート川口を見てください。B9セルに4月の合計が入力されいます。![INDIRECT関数](gazo2013/kan/2013-kan32_04.png)
![INDIRECT関数を入力](gazo2013/kan/2013-kan32_03.png)
シート川口を見てください。B9セルに4月の合計が入力されいます。
![INDIRECT関数](gazo2013/kan/2013-kan32_04.png)
都合のいいことに、川口の文字は、
まとめシートのB3セルに入っています。だからB3セルを指定しましょう。
![INDIRECT関数2](gazo2013/kan/2013-kan32_05.png)
まとめシートのB3セルに入っています。だからB3セルを指定しましょう。
![INDIRECT関数2](gazo2013/kan/2013-kan32_05.png)
引数は文字列ですから、続くのは文字列です。
このように入力します。
=INDIRECT(B3&"!B9")
![INDIRECT関数3](gazo2013/kan/2013-kan32_07.png)
このように入力します。
=INDIRECT(B3&"!B9")
![INDIRECT関数3](gazo2013/kan/2013-kan32_07.png)
となりの大宮店、熊谷店の合計は、オートフィルでコピーします。
![INDIRECT関数4](gazo2013/kan/2013-kan32_08.png)
![INDIRECT関数4](gazo2013/kan/2013-kan32_08.png)
=INDIRECT(B3&"!B9")のB3は、セルを指定しているので、オートフィルでコピーができるのです。
下図は、数式表示にしています。
![INDIRECT関数5](gazo2013/kan/2013-kan32_10.png)
下図は、数式表示にしています。
![INDIRECT関数5](gazo2013/kan/2013-kan32_10.png)
他の合計欄も、川口店の5月合計なら、=INDIRECT(B3&"!C9")
6月合計なら、=INDIRECT(B3&"!D9") というように入力します。
コピーしてちょっと修正すればOKですね。
![INDIRECT関数6](gazo2013/kan/2013-kan32_11.png)
6月合計なら、=INDIRECT(B3&"!D9") というように入力します。
コピーしてちょっと修正すればOKですね。
![INDIRECT関数6](gazo2013/kan/2013-kan32_11.png)
数式表示のままでも、オートフィルできますから、コピーしてやります。
![INDIRECT関数7](gazo2013/kan/2013-kan32_12.png)
![INDIRECT関数7](gazo2013/kan/2013-kan32_12.png)
INDIRECT関数で別シートの合計欄をまとめシートに表示することができました。
![INDIRECT関数8](gazo2013/kan/2013-kan32_13.png)
いかがでしたか?INDIRECT関数は、文字列で指定しながらも、ちゃんとシートやセルを参照してくれます。
VLOOKUP関数などと組み合わせて使うと、さらに便利さを実感できます。それは、また次回にご紹介します。
VLOOKUP関数などと組み合わせて使うと、さらに便利さを実感できます。それは、また次回にご紹介します。