【Excel】SUMIF関数が最近のマイブーム
Excelはただ数値を打ち込むだけの表ではない。それは義務教育で学んだことだ。そのためには、小学校低学年で習った条件分岐系の関数*1を使うことが重要である。
条件分岐系の関数の中でも、SUMIF関数が最近のマイブームである。
本記事では、SUMIF関数の使い方と使用例を踏まえ、最近のマイブームたる所以を説明したい。
SUMIF関数の使い方
SUMIF関数とは、条件に一致した数値を合計する関数である。つまり、リストの中で条件に一致した数値のみの合計を出すことができる。
SUMIF関数は、3つの引数を指定しなければならない。
=SUMIF(条件範囲,条件,合計範囲)
条件範囲の中から指定した条件に合致するデータを探し、条件に合致した行の合計範囲のデータを合計する。
SUMIF関数の使用例(行の層別)
1つ目の使用例を示す。部品リストと単価があり、新規/共用で部品単価の合計を別々に算出したい場合である。一般化すると層別した合計である。
D列が条件範囲となっており、この中からF5の値を検索する.C列が合計範囲で、D列で一致した場合に足される数値たちである。なお、詳しくは書かないが、条件範囲と合計範囲は絶対参照にしておくとコピペが楽である。
SUMIF関数の使用例(列の参照)
1つ目の例は層別した合計であった。SUMIF関数は行の検索しか出来ないように見える。しかし、SUMIF関数は列の参照のようなこともできる。
以下の2つ目の使用例は、A,B,Cの3チームで買い物をした際の1人当たりの支払いを算出したい場合である。合計900円をA,B,Cチームの全員で一律割り勘した場合、900/20=45円となる。これではチームで買った果物とその人数が考慮されていない*2。
Aチームはリンゴとバナナとスイカを買っている。リンゴはB,Cチームも買っている。つまり、リンゴはA,B,Cチーム全員で割り勘すべきである。また、メロンはBチームしか買っていないため、Bチームのみで割り勘すべきだ。果物ごとに1人当たり支払額を算出してもいいが、もし果物が1000種類あったら時間がいくらあっても足りない。
そこで、その果物を買ったチームには印*3を付け、Q列で1人当たり支払額を出しておく。N5:P5では、印に応じてQ列の1人当たり支払額を足していく。Bチームは果物を4種類買っていることに加え、一番高いメロンを買っているので1人当たり支払額が多いのは納得である。
マイブームたる所以
SUMIF関数を1つ目の使用例である層別でよく使用していたが、最近になって2つ目の使い方である参照の機能に気付いた。もう少し詳しく言うと、条件によって合計値が変わる数値の参照である。今までは例えると、●の代わりに人数を打ち込み、SUMで合計した人数で値段を割っていた気がする。計算としては問題ないが、プロセスが前時代的すぎて人様に見せられたものではない。
Excelシートを計算機として利用すると、計算結果などは人に説明する際に別途説明資料としてパワポなどに転記しなければならない。その作業はあまりにも無駄である。転記作業を無くすためには、計算機自体が人様に見せられる体裁でなければならないと感じている。●のようなチェックを入れるのみで計算が進められるので、大変重宝している。