-
Home »
-
エクセル関数一覧表 »
-
Excel関数の目次 »
-
DCOUNT関数の使い方(データベース関数)
更新:2020/12/14;作成:2015/12/12
数値が入力されているセルの個数を求める
ディー カウント
=DCOUNT(Database,フィールド,Criteria)
- ここでは下表のデータを使って説明します。
|
B |
C |
D |
E |
F |
G |
H |
2 |
No |
名前 |
性別 |
年齢 |
血液型 |
情報A |
情報2 |
3 |
1 |
今泉真理 |
女 |
50 |
AB |
61 |
59 |
4 |
2 |
藤村美奈子 |
女 |
34 |
B |
49 |
92 |
5 |
3 |
寺田琉那 |
女 |
25 |
AB |
61 |
69 |
6 |
4 |
五十嵐篤 |
男 |
22 |
B |
30 |
68 |
7 |
5 |
大場龍雄 |
男 |
40 |
A |
73 |
37 |
8 |
6 |
吉川好子 |
女 |
28 |
A |
45 |
欠席 |
9 |
7 |
北章司 |
男 |
45 |
O |
90 |
60 |
10 |
8 |
田ノ上義昭 |
男 |
20 |
B |
61 |
欠席 |
11 |
9 |
露木志帆 |
女 |
24 |
B |
85 |
62 |
12 |
10 |
野島昌彦 |
男 |
50 |
O |
72 |
55 |
13 |
11 |
山岡陽菜乃 |
女 |
45 |
A |
81 |
47 |
14 |
12 |
吉崎光雄 |
男 |
40 |
B |
68 |
77 |
15 |
13 |
水口勝昭 |
男 |
28 |
A |
70 |
58 |
16 |
14 |
岡田真由 |
女 |
39 |
AB |
欠席 |
51 |
17 |
15 |
臼井幸也 |
男 |
32 |
AB |
38 |
54 |
18 |
16 |
森岡果凛 |
女 |
34 |
B |
41 |
64 |
19 |
17 |
川村心 |
女 |
23 |
O |
88 |
50 |
条件が一つの場合 topへ
- 【問題】性別が「女」の「情報A」を受験した人数を求めなさい。
ここの例では受験していない場合は「欠席」と入力されています。
- 【解答例】
- 求める条件を入力します。
ここではJ2セルにフィールド名「性別」を入力し、J3セルに条件となる「女」と入力しました。
数式は =DCOUNT(B2:H19,G2,J2:J3)
女性の数は9ですが、一人は欠席のため、情報Aの列の数値のセル数は8となります。
- なお、この数式ではデーターベースのフィールドのセル G2 を指定しています。
DCOUNT関数の引数のフィールドには "情報A" とフィールド名を入力したり、データベースの列の順番の 6 と入力することもできます。
- フィールド名(列見出し)を数式に使うと =DCOUNT(B2:H19,"情報A",J2:J3) となります。
列の順番を使うと =DCOUNT(B2:H19,6,J2:J3) となります。
DCOUNT関数の引数ダイアログを使う場合は、データベースに B2:H19 、フィールドに G2 、条件に J2:J3 と入力します。
- 条件を数式で入力することもできます。
ここの例では J9セルに「条件」と入力していますが、J9セルは空欄でもよいし、フィールド名と重ならない文字列でもよいです。
J10セルの条件の数式は データの最初の行を使って作成します。 ここでは =D3="女" と論理式を入力しています。
数式は =DCOUNT(B2:H19,G2,J9:J10) としました。
DCOUNT関数の引数ダイアログを使う場合は、データベースに B2:H19 、フィールドに G2 、条件に J9:J10 と入力します。
- なお、配列数式やSUMPRODUCT関数でも求めることもできます。
{=SUM((D3:D19="女")*ISNUMBER(G3:G19))}
=SUMPRODUCT((D3:D19="女")*ISNUMBER(G3:G19))
SUMPRODUCT関数の詳細な使い方は SUMPRODUCT関数の使い方:Excel関数をご覧ください。
条件が複数ある場合(AND条件とOR条件) topへ
- ポイントは条件の書き方になります。
条件をフィールドと値で書き出す場合、AND条件は同一行、OR条件は異なる行に書き出すというルールがあります。
- 【問題1】性別が「女」で血液型が「AB」の情報Aの受験者数を求めなさい。 問題1の解答例
- 【問題2】性別が「女」で血液型が「AB」または「B」の情報Aの受験者数をカウントしなさい。 問題2の解答例
- 【問題3】年齢が20歳代の人の情報Aの受験者数をカウントしなさい。 問題3の解答例
- この問題は 性別が女 AND 血液型がAB というAND条件になります。
AND条件の場合は同じ行に条件を書きます。
J2:K2セルに条件とするフィールド名を入力します。
J3:K3セルに条件となる値をそれぞれ入力します。
計算式は =DCOUNT(B2:H19,G2,J2:K3) としました。
性別が女で血液型ABの人数は3ですが一人は欠席のため数値のセル数は 2 となります。
DCOUNT関数の引数ダイアログを使う場合は、データベースに B2:H19 、フィールドに G2 、条件に J2:K3 と入力します。
- 条件を論理式で書くと =(D3="女")*(F3="AB") とすることができます。AND条件は乗算で表すことができます。
J9セルには、データベースのフィールドと異なる文字列を入力するか、空欄にします。
ここでは「条件」と入力しました。
受験者数は =DCOUNT(B2:H19,G2,J9:J10) で求めることができます。
- 条件は AND関数を使うと =AND(D3="女",F3="AB") と書くこともできます。
- なお、配列数式やSUMPRODUCT関数でも求めることもできます。
{=SUM((D3:D19="女")*(F3:F19="AB")*ISNUMBER(G3:G19))}
=SUMPRODUCT((D3:D19="女")*(F3:F19="AB")*ISNUMBER(G3:G19))
- 日本語の読解問題にもなりますが、条件は「女」の「AB]または「女」の「B] というOR条件の平均値を求めることになります。
OR条件の場合は異なる行に条件を書きます。
よって条件は下図のJ3:K4のように2行に分けて入力します。
数式は =DCOUNT(B2:H19,G2,J2:K4) としました。
- 条件を数式で書くこともできます。
ここでは 条件を =(D3="女")*(F3="AB")+((D3="女")*(F3="B")) としました。
平均値を求める数式は =DCOUNT(B2:H19,G2,J9:J10) となります。
- なお、条件は =(D3="女")*((F3="AB")+(F3="B")) と書くこともできます。
論理式では AND条件は * 、OR条件は + で書くことができます。
- AND関数とOR関数を使って条件を書くこともできます。
=OR(AND(D3="女",F3="AB"),AND(D3="女",F3="B"))
または =AND(D3="女",OR(F3="AB",F3="B")) とします。
- なお、配列数式やSUMPRODUCT関数でも求めることもできます。
{=SUM(((D3:D19="女")*(F3:F19="AB")*ISNUMBER(G3:G19))
+((D3:D19="女")*(F3:F19="B")*ISNUMBER(G3:G19)))}
=SUMPRODUCT(((D3:D19="女")*(F3:F19="AB")*ISNUMBER(G3:G19))
+((D3:D19="女")*(F3:F19="B")*ISNUMBER(G3:G19)))
- 年齢が20歳代とは 20以上 かつ 30未満となります。
このように同じフィールドで複数のAND条件がある場合は 下図のJ2:K3セルのように同じ行にフィールドを並べて書く必要があります。
数式は =DCOUNT(B2:H19,G2,J2:K3) としました。
- 条件を数式で書くと =AND(E3>=20,E3<30) とすることができます。
カウントの計算は =DCOUNT(B2:H19,G2,J9:J10) としました。
- 条件を論理式で書くと =(E3>=20)*(E3<30) となります。
- なお、配列数式やSUMPRODUCT関数でも求めることもできます。
{=SUM((E3:E19>=20)*(E3:E19<30)*ISNUMBER(G3:G19))}
=SUMPRODUCT((E3:E19>=20)*(E3:E19<30)*ISNUMBER(G3:G19))
スポンサードリンク
よねさんのWordとExcelの小部屋 »
エクセル関数一覧表 »
DCOUNT関数の使い方(データベース関数)
PageViewCounter
Since2006/2/27