manase's blog

ビジネスのためのエクセル集計・分析など

Sumifsについて

Sumifs関数は、Sumif関数が「複数の条件」に対応できるようになった関数です。しかし、使用する条件の数(単数か複数か)によって使い分ければ良いのでは、と考える意味はあまりないと思います。使用する条件が単数であろうが複数であろうが、シンプルに、どのような場合でもSumifsのみを使えばいいのです。あえてSumifを使用する積極的な理由は思いつきませんし、エラーを避けるためにもSumifは使わないようにお勧めしています。

これらの二つの関数の違いは「使用する条件の数」が単数か複数か、ということだけではありません。もっと深刻な違いが存在します。それは「引数の順番」です。Sumif関数では「合計範囲」を、最後(3番目)の引数に指定します。しかし、Sumifsでは、「合計範囲」を最初の引数として入力します。

 

=SUMIF(検索範囲, 検索値, 合計範囲) 

=SUMIFS(合計範囲, 検索範囲1, 検索値1, 検索範囲2, 検索値2, …)

 

つまり、「合計範囲」を入力する順番が異なるため、関数を使い分けること自体が、リスクとなってしまいます。混乱を避けるためにも、Sumif関数は使わず、Sumifs関数のみを使うようにお勧めします。

 

そして、Sumifs関数をお勧めする理由として、より大切なことがあります。それは、多くの場合「複数の軸」で切り分けたデータを見ることが非常に大切だからです。最も代表的な例はクロス集計でしょう。

f:id:manaseee:20180124223756j:plain

上記の例では、もし「商品別」という一つの軸のみでデータを見るのであれば、商品別の売上の違いしか観察できません。複数の軸で見るのであれば、(ありきたりな例ですが)例えば「商品別の売上」における「性別間」の差を比較することができます。条件を追加すれば、「男性のみ」のデータで商品別における地域間の差を比べる、など、より踏み込んだ集計ができるようになります。

 

f:id:manaseee:20180124224436j:plain

データを集計・分析する上でまず大切な処理は、意義のある比較ができるようにデータを切り分ける、ということです。そのためにも、複数の軸で切り分けることを常に習慣としなければなりません。初歩的なことに見えますが、以外とそのようなことができていないケースをよく見かけます。業務上求められている処理ではないとしても、それでも積極的にクロス集計を行ってみることにより、新たな気づきを生む機会を多くしたいものです。そのような意味でも、Sumifs関数は絶対に習得しなければなりません。

 

特に、単数軸のみの単純集計(Sumif)に比べてクロス集計(Sumifs)がより大切だと思う理由は、「数字の大小の比較」と「分布の形の比較」の違いです。仮に以下のような結果が出たとします。

 

f:id:manaseee:20180124230017j:plainf:id:manaseee:20180124230032j:plain

単軸のみの単純集計の場合、観察できることは「軸1のカテゴリー間の数字の大小を比較」です。例えば、「商品Aは商品Bより売り上げが高い」、「地域Aでは地域Bより売り上げが高い」、などです。つまり、数字の大小を比較しているのです。

一方、複数軸(クロス集計)の場合、数字の大小の比較はもちろんなのですが、同時に分布の形」がカテゴリー間でどのように違うかを視覚的に観察することができます。

 

f:id:manaseee:20180128225238j:plain

 

数字の大小を見るよりも、分布の形を見比べることのほうが、得られる情報量としては圧倒的に多いですし、その後の議論にも繋がりやすいと思います。

 

当然のことながら、クロス集計のみで、その後のアクションに繋がるような情報を全て揃えることができるとは思いません。それでも、クロス集計から得られた気づきから、様々な課題を見つけたり、仮説を立て、それらの仮説の検証のためにどのようなデータが必要なのか、という次の議論に繋げることができるのではないでしょうか。

 

上記のようなクロス集計なら、もちろんピボットテーブルも行うことができますし、むしろピボットテーブルを使った方が簡単に集計できるでしょう。しかし、一度ピボットテーブルを使ってしまうと、その後の複雑な集計や分析をする際に色々と障害が生じます。ピボットテーブルは「単純な集計を楽に処理できる」という点では素晴らしいと思います。しかし、複雑な集計・分析を行う際には、やはり数式を使った関数やその他の機能の方が向いているでしょう。