エクセルで、データベースの中から条件を満たす値の数を算出するのが『DCOUNT関数』です。
下図を用いて、DCOUNT関数の使い方を解説します。
DCOUNT関数の構文
まず、DCOUNT関数の構文は、次のようになっております。
=DCOUNT(データベース,フィールド,条件)
エクセル関数を使う時は、2つの使い方があります。
1つ目は、黄色の○で囲っている「fxをクリック→すべて表示を選択→該当関数を選択→OK」と入力後に、入力内容を指示した枠が表示されるので、そこに入力することです。
2つ目は、緑色の枠に構文を直接入力となります。
DCOUNT関数の使い方
次に、「条件1:条件に該当する数をDCOUNT関数を使い算出」の時の構文です。
J3セルに入力する時の関数は下記になります。
=DCOUNT($A$2:$E$8,3,G2:H3)
データベース:算出対象の範囲
フィールド:算出したいデータの列数
条件:算出したい内容
上記の数式だけだと、数学と英語の点数に関して、条件に該当する数の算出が出来ませんので、J6セルとJ9セルには次の数式を入力します。
J6セル=DCOUNT($A$2:$E$8,4,G5:H6)
J9セル=DCOUNT($A$2:$E$8,5,G8:H9)
列数と条件を変えることで、数学と英語の条件に該当する数の算出に変えることが出来ます。
条件1の例題は、各科目の条件に該当する人の数の算出が求められています。
国語は、性別が男で80点以上の人が何人であるか求められています。
条件に該当する人は、「80点のA」と「90点のC」と「80点のE」なので、3人となります。
数学は、性別が女で80点以上の人が何人であるか求められています。
条件に該当する人は、「100点のB」と「90点のF」なので、2人となります。
英語は、性別が男で80点以上の人が何人であるか求められています。
条件に該当する人は、「80点のA」と「90点のC」なので、2人となります。
DCOUNT関数とCOUNTIFS関数の違い
DCOUNT関数は全項目のいずれかの条件に該当する数の算出が可能で、COUNTIFS関数は項目別の条件に該当する数の算出が可能です。
下図が両者の違いのイメージとなります。
COUNTIFS関数は、一覧表にして個別に条件へ該当する数を算出することが可能ですが、DCOUNT関数では、出来ません。
DCOUNT関数では、条件の範囲に項目名を入れる必要があるためです。
「性別が女で80点以上」に該当する人の数を算出する時は、条件に『性別~>=80』の4つのセルを選択すれば良いですが、「性別が男で80点以上」に該当する人の数を算出する時は、緑かっこの範囲のように『性別~>=80』の6つのセルを選択する必要がありますので、「性別が女で80点以上の人」と「性別が男で80点以上の人」の数が算出されます。
よって、個別項目に該当する人の数を算出したい時は、COUNTIFS関数を使うべきです。
逆に、「性別が女で80点以上の人」と「性別が男で80点以上の人」の数を算出といった、複数項目のいずれかの条件に該当する人の数を算出したい時は、DCOUNT関数で条件の範囲を指定すれば、すぐに算出することが可能です。
複数項目のいずれかの条件に該当する人の数は、COUNTIFS関数でも、算出することは可能ですが、数式が長くなりますので、DCOUNT関数の方が早いです。
DCOUNT関数とCOUNTIFS関数のそれぞれの強みを理解して、使い分けましょう。