データベースから条件に合うデータの個数を求める…DCOUNTA関数

[Excel 2016/2013/2010/2007]

データベース関数のひとつDCOUNTA関数を使用すると、データベース形式の表から条件に合うデータを探してデータの個数を求められます。データベース形式とは、1行目に列見出し、2行目以降にデータが入力された表のことです。

スポンサーリンク

作例…成績データベースから「男」「世界史」のデータ数を求める

図1の成績データベースから、条件表の条件に合うデータを探します。DCOUNTA関数の引数[データベース]に成績データベースのセル「A2:E10」、[条件]に条件表のセル「G2:H3」を指定します。

「進路希望提出者数」欄(セルG10)では、引数[フィールド]に「進路希望提出」の文字が入力されているセル「E2」を指定して、該当データの中から「進路希望提出」データの個数を求めます。「条件該当者数」欄(セルH10)では、引数[フィールド]に何も指定せずに、該当データの件数を求めます。

[データベース]から[条件]に合うデータを探して[フィールド]列のデータの個数を求める
=DCOUNTA(データベース, フィールド, 条件)

セルG10 | =DCOUNTA(A2:E10,E2,G2:H3)

セルH10 | =DCOUNTA(A2:E10,,G2:H3)

図1 DCOUNTA関数の引数[フィールド]にセルE2を指定した場合は、「男」「世界史」の「進路希望提出」のデータの個数(★印)が求められる。引数[フィールド]に何も指定しない場合は、「男」「世界史」のデータ数(赤点線枠)が求められる。

注意

文字列の「完全一致条件」の注意
図1では条件として「男」「世界史」と入力していますが、この条件の実際の意味は「男で始まる」「世界史で始まる」です。正確に「男」「世界史」を抽出するには、「=男」「=世界史」という条件を指定する必要があります。詳しくは「データベース関数で文字列の完全一致条件を指定する」を参照してください。

関数解説…DCOUNTA関数

=DCOUNTA(データベース, フィールド, 条件)

データベース]から[条件]に合致するデータを探し、見つかった行の[フィールド]列のデータの個数を求めます。引数[フィールド]に何も指定しない場合は、条件に合致する行数が求められます。

引数

引数 指定 説明
データベース 必須 データベースのセル範囲を指定する。1行目に列見出しを入力しておくこと
フィールド 省略可 集計対象の列見出しの文字列を指定するか、データベースの左端から数えた列番号を指定する
条件 必須 条件表のセル範囲を指定する。1行目に列見出しを入力しておくこと

メモ

データベース関数
「データベース関数」には、DSUM関数(合計)、DAVERAGE関数(平均)、DCOUNT関数(数値の個数)、DCOUNTA関数(データの個数)、DMAX関数(最大)、DMIN関数(最小)などがあります。いずれも[データベース][フィールド][条件]の3つの引数を持ちます。

引数[フィールド]の指定方法

引数[フィールド]には、集計対象の列見出しが入力されているセルを指定するか(式1)、列見出しの文字列をダブルクォーテーション「”」で囲んで指定するか(式2)、データベースの左端列を「1」として数えた列番号を指定します(式3)。

式1 | =DCOUNT(A2:E10,E2,G2:H3)
式2 | =DCOUNT(A2:E10,"進路希望提出",G2:H3)
式3 | =DCOUNT(A2:E10,5,G2:H3)

引数[条件]の指定の注意

1行目に列見出しを入力する

データベース関数では、条件の対象とする列を、条件表の1行目に入力された列見出しで判断します。条件表の1行目には、必ずデータベースの列見出しと同じ文字列を入力してください。

AND条件は同じ行、OR条件は異なる行に入力する

図2条件表1のように複数の条件を同じ行に入力すると、「条件A、かつ、条件B」という意味のAND条件になります。条件表2のように複数の条件を異なる行に入力すると、「条件A、または、条件B」という意味のOR条件になります。詳しくは、「データベース関数でAND条件/OR条件を指定する」を参照してください。

図2 AND条件は同じ行、OR条件は異なる行に入力。

空白セルはOK、空白行はNG

引数[条件]に指定する条件表の条件欄に、空白セルがあってもかまいません。図3条件表1では「列見出し1」「列見出し3」の条件欄が空白ですが、問題ありません。条件表1条件表2は同じ条件を表します。

ただし、条件表の1行まるごと空白にしてしまうと、データベースの全データが集計されるので注意してください。例えば、条件表3では、「条件A」「条件B」が無視され、データベースの全データが集計対象となります。

図3 条件表1条件表2は同じ条件を表す。条件表3では「条件A」「条件B」が無視され、データベースの全行が集計される。

メモ

データベース関数の条件の指定方法
条件の指定方法は、次のページを参考にしてください。
スポンサーリンク

関連記事