スポンサーリンク

複数シートをまとめて集計できる範囲指定のやりかた

関数の応用

複数シートの同じ列や行を、まとめて集計する方法の紹介です。

と言ってもイメージ沸きにくいですよね。

百聞は一見に如かずという古より伝わる名言に従って、さっさと実験していきます。

SUM関数で3シート全部のB列の数値を合計する

わかりやすい例題として、3シート全てのB列に数値を用意します。

そして集計用のシートで、その3シートに用意した数値をSUM関数で合計します。

式:=SUM('1月:3月'!B:B)

普段のSUM関数と違う点は、範囲選択の時に、1月シートから3月シートを指定している点ですね。

すると、図のように3シート全てのB列の数値を合計してくれました。

ただし注意点があり、シートを複数指定する場合は、シートがすべて隣接していることが条件になります。

例えば、1月2月3月シートの内、1月と3月だけでの集計はできないという事です。

SUM以外の関数でも使える

SUM関数以外でも、シンプルな関数ならばこの範囲選択のやり方が使えます。

全部は把握しきれてないので、代表的なのものを紹介。

このように、AVERAGE関数やCOUNT関数でも使う事ができます。

できない関数も多い

先ほど、シンプルな関数ならばこの範囲選択のやり方が使えると言いました。

それはつまり、できない関数もあるという事です。

例えば、SUM関数、AVERAGE関数、COUNT関数では使えましたが、SUMIF関数、AVERAGEIF関数、COUNTIF関数になると使えなくなります。

残念、#VALUEでエラーとなってしまいました。

そしてこの複数シートを範囲選択する方法、集計関係の関数の他に、VLOOKUP関数などでも使えたら嬉しいのですが、もちろんダメでした。

素直にINDIRECT関数との組み合わせを使えって事ですね。

 

 

急にシートの順番変えたらどうなるの?

途中で少し触れましたが、注意点があります。

シートを複数指定する場合は、シートがすべて隣接していることが条件になります。

では、数式を組んだあとにシートの並び順を変えるとどうなるか、気になりますよね。

さっそく試してみましょう。

1月、2月、3月の順にシートが並んでいたのを、2月、1月、3月の順に入れ替えてみます。

このように、2月が無視されました。

なので、この範囲選択の方法を使う場合は、迂闊にシートの並び順を変えないよう注意しましょう。

油断すると、エラーにもならず、静かに結果だけが狂うという事態になりかねません。

まとめ

以上、SUM、AVERAGE、COUNTなどの基礎的な集計関数では、シートをまたいで集計する事ができる。というお話でした。

使える関数が限られていることもあり、使用頻度としてはさほど多くありません。

ですが、覚えていると便利な方法ですので、頭の片隅に住まわせておいて損はないでしょう。

最後に、せっかくなので記事に登場した関数の記事を紹介して終わります。

 

コメント

タイトルとURLをコピーしました