まりふのひと

エクセルのDCount関数 ヘルプのへるぷッ!

Excelの解らないところがるので教えてほしい」と頼まれたので見せてもらったら、DCount 関数が使ってあった。「Access と知見では理解できない」ということは解ったのだが‥‥ 帰宅し、Excel2003 のヘルプを調べた。

DCOUNT

 リストまたはデータベースの指定された列を検索し、条件を満たすレコードの中で数値が入力されているセルの個数を返します。
 フィールド は省略可能な引数です。フィールド を省略すると、データベース全体から条件を満たすレコードが検索され、その中で、数値が入力されているセルの個数が返されます。

書式

DCOUNT(Database,フィールド,Criteria)
 Database リストまたはデータベースを構成するセル範囲を指定します。Database は、行 (レコード) と列 (フィールド) にデータを関連付けたリストです。リストの先頭の行には、各列の見出しが入力されている必要があります。
 フィールド 関数の中で使用する列を指定します。フィールドには、半角の二重引用符 (") で囲んだ "樹齢" や "歩どまり" などのような列見出し、またはリストでの列の位置を示す番号 (この場合は二重引用符で囲みません) を入力します。たとえば、先頭の列を示す場合は 1 を、2 番目の列を示す場合は 2 を入力します。
 Criteria 指定した条件が設定されているセル範囲を指定します。列見出しと検索条件を指定するセルが少なくとも 1 つずつ含まれている場合は、Criteria に任意のセル範囲を指定することができます。

使用例

 ABCDEF
1名前樹高樹齢歩どまり利益樹高
2="=りんご">10   <16
3="=梨"     
4名前樹高樹齢歩どまり利益 
5りんご182014105.00 
612121096.00 
7さくらん13149105.00 
8りんご14151075.00 
998876.80 
10りんご89645.00 

数式
  1. =DCOUNT(A4:E10,"樹高",A1:F2)
    • 樹高が 10 〜 16 のりんごの木のレコードを検索し、条件を満たすレコードの "樹齢" フィールドに入力されている数値の個数を求めます (1)
  2. =DCOUNTA(A4:E10,"利益",A1:F2)
    • 樹高が 10 〜 16 のりんごの木のレコードを検索し、条件を満たすレコードの "利益" フィールドにある空白でないセルの個数を求めます (1)


ヘルプのヘルプ !!!
このヘルプの DCOUNT の説明が理解できない。

「"樹齢" フィールドに入力されている数値の個数」とあるが、「"樹高" フィールドに入力されている数値の個数」ではないの?

念のためハードコピーを載せた。Microsoft Office Online も同じだ。


データを適当に入れ替えても、“樹齢”の個数にならない。因みに、エクセルの勉強部屋 > データベース関数 では“フィールド”の個数となっている。

Accessの例

DCount(expr, domain, [criteria])


上記エクセルの例を真似ると、

DCount([樹齢], "A4:E10", (([樹高] > 10) and ([樹高] < 16)))

となる。(未検証)