Excel関数のお勉強

油断していたら風邪をひいて熱を出したYu-ichiです:neko:

土曜日はパソコンのインストラクターをやっていたりしますが
その中で、持ち込みで資料を作って欲しい!という方もいらっしゃいます。

たいていのものはその場でちょちょいと作ってしまうのですが、
アプリケーションのバージョンによって、動作しない物などがあります。:naku:

今回はExcel2007の「SUMIFS」関数を2003以降のバージョンで
再現してみたいと思います。:wa-i:

「SUMIFS」関数とは、「SUMIF」関数のパワーアップ版です。:cat_5:
どう変わっているのかというと、
「SUMIF」関数が1つの条件で当てはまったものの合計を出すのに比べ、
「SUMIFS」では複数条件に当てはまったものの合計を出すことが出来るのです。

「SUMIFS」関数は

=SUMIFS(合計対象範囲,条件範囲1,条件1,条件範囲2,条件2…)

という関数なので、上の表を関数を使ってあらわすと、セルG3に入る式は

=SUMIFS($C$3:$C$15,$A$3:$A$15,E3,$B$3:$B$15,F3)

となります。
でもこれはExcel2007でのお話です。:ga-n:
その前のバージョンでは、「SUMIFS」関数が使えないため、工夫が必要になります。

あまり正しい使い方では無いのですが、「SUMPRODUCT」関数を使います。:kaoemoji2:

=SUMPRODUCT(配列1,配列2,配列3,…)

これを使って上の表をあらわすと、こうなります。:cat_5:

=SUMPRODUCT(($A$3:$A$17=E3)*($B$3:$B$17=F3),$C$3:$C$17)

ちょっと複雑な感じがしますが、赤文字の条件に当てはまれば「1」が、
当てはまらなければ「0」が代入される性質を利用しています。
0×1000=0、1×1000=1000 という感じですね。:kaoemoji3:

これを考えると、Excel2007は非常に使いやすくなった気がします。
インターフェース以外は・・・:hamster_4:

またExcelの便利な関数や小技を紹介していきたいと思います。:neko:
ご期待下さい!

ブログランキングの方も、応援お願いします:kaomoji6:
:onegai::yubiright: :yubileft:お陰様でFC2ランキング第2位:cat_5:

トラックバックURL