6/07/2018

Excel。6月に会員登録した人数を知りたいけど、楽な方法ないかな?【COUNT】

Excel。6月に会員登録した人数を知りたいけど、楽な方法ないかな?

<SUMPRODUCT+MONTH関数>

次のような顧客情報があります。

登録月が6月の人に年間更新の有無を確認したいそうで、
6月に登録した人数を把握したいというのが目的。

普通に考えるならば、D列にMONTH関数を使って、
6と算出されたものの数を数えるというのが、結構基本的な考え方だと思います。

一応やっておきましょう。

D2をクリックして、MONTH関数ダイアログボックスを表示しましょう。

シリアル値には、C2を入力してOKボタンをクリックして、
オートフィルで数式をコピーしましょう。

あとは、F2にCOUNTIF関数を使って算出させます。

なおF1の6月は、表示形式のユーザー定義で”月”を表示させているだけで、
セルの内容は、6なので、F1を使って算出していきます。

では、F2にCOUNTIF関数ダイアログボックスを表示しましょう。

範囲には、D2:D2
検索条件には、F1
では、OKボタンをクリックしましょう。

数式は、
=COUNTIF(D2:D12,F1)

このように3名と算出することが出来ました。

この場合でもOKなのですが、次の方法でも算出することが出来ますので、
参考になれば幸いです。

【SUMPRODUCT関数を使ってみる】

D列にMONTH関数で算出した結果を数える方法ではないやり方なのですが、SUMPRODUCT関数を使う方法です。

SUMPRODUCT関数は、掛け算の結果を合計する関数ですね。

F3をクリックして、
SUMPRODUCT関数ダイアログボックスを表示しましょう。

配列1には、MONTH(C2:C12)を入力して、OKボタンをクリックします。

数式は、このようになっています。
=SUMPRODUCT(MONTH(C2:C12))

ただ、これだけでは当然ダメで、次のように数式をアレンジしていきます。

=SUMPRODUCT((MONTH(C2:C12)=F1)*1)

このように、先ほどと同じように、3と算出することが出来ましたね。

どうして算出することができたのでしょうか?

MONTH(C2:C12)=F1
MONTH(C2)=F1が合致したらTRUE。
合致しなければ、FALSE。と判断が出ます。

では、E列を追加して、確認してみましょう。

E2には、
=MONTH(C2)=$G$1
という数式を作り、オートフィルで数式をコピーしてみると、
G1、つまり、6と合致しているところは、TRUEが算出されて、
合致しないところは、FALSEが算出されます。

TRUEは1。FALSEは0。
というようにExcelでは決まっているのですが、
このままでは計算が出来ないので、×1してあげることにより、
数値に変換することが出来ます。

E2の数式を次のように修正して、
オートフィルで数式をコピーしてみましょう。

=(MONTH(C2)=$G$1)*1

1と0の数値になりましたね。
こうなれば、この範囲の合計値ですから、3になったことがわかりますよね。

今回のように、一度月を算出してその件数を数えてもいいですが、
SUMPRODUCT関数を使うことでも、算出することができますよ。