跳转至

DCOUNT 函数

一、函数概述

在 Excel 的“数据库函数”家族中,DCOUNT 用来在一个“类数据库表”的区域里,按指定条件统计某一字段(列)中包含数字的单元格数量

你可以把它理解为:

  • 先用“条件区域”筛选出符合规则的记录(行)
  • 再在指定字段里,只统计数值型单元格的个数(文本、空白不会计入)

适用场景举例:

  • 统计“销售额 > 10000 且地区 = 华东”的订单数量(前提:销售额字段为数字)
  • 统计“年龄 ≥ 18”的人数(年龄列为数字)
  • 统计满足多条件的“评分”记录数(评分列为数字)

如果你希望“非空就算一个”(无论文本或数字),更常用的是 DCOUNTA。而 DCOUNT 更严格:只统计“数字”。


二、基础语法

DCOUNT(database, field, criteria)

三、参数说明

参数 必填 含义 常见写法/要点
database 数据库区域(表格区域) 必须包含表头行,例如 A1:F100
field 要统计的字段(列) 可写列标题文本(如 "销售额"),也可写列序号(如 3 表示 database 的第 3 列)
criteria 条件区域 必须包含条件表头,表头需与 database 表头一致;条件写在表头下方

条件区域(criteria)的关键规则

  • criteria 本身是一个小表格:第一行是字段名(表头),下面是条件值/表达式
  • 同一行的多个条件是“并且(AND)”关系
  • 不同的行是“或者(OR)”关系

例如(示意):

地区 销售额
华东 >10000

表示:地区=华东 销售额>10000

而:

地区 销售额
华东 >10000
华南 >20000

表示:(华东且>10000)(华南且>20000)


四、基础用法示范

下面用一张常见的订单表来演示。假设你的数据区域为 A1:E11

订单号 地区 销售员 销售额 日期
1001 华东 张三 12000 2025-01-03
1002 华北 李四 8000 2025-01-05
1003 华东 王五 15000 2025-01-06
1004 华南 赵六 22000 2025-01-08
1005 华东 张三 9000 2025-01-10
1006 华南 王五 2025-01-12
1007 华东 李四 13000 2025-01-14
1008 华北 张三 11000 2025-01-15
1009 华南 赵六 21000 2025-01-18
1010 华东 王五 文字 2025-01-20

注意:第 1006 行“销售额”为空;第 1010 行“销售额”为文本“文字”。DCOUNT 不会统计它们


示例 1:统计“销售额”列中所有数字的数量

条件区域(比如放在 G1:G2):

销售额
>-1

这里用 >-1 只是为了“基本覆盖所有正常销售额数字”,你也可以用 >=0 等更符合业务的条件。

公式:

=DCOUNT(A1:E11, "销售额", G1:G2)

结果含义:在满足条件的记录中,统计“销售额”字段里是数字的单元格个数。空白和文本不计入。


示例 2:单条件统计

统计“地区=华东”的订单中,销售额为数字的订单数量

条件区域(例如 G1:H2):

地区 销售额
华东 >=0

公式:

=DCOUNT(A1:E11, "销售额", G1:H2)

解释:筛出地区为华东且销售额≥0的行,然后对“销售额”字段做“数字计数”。


示例 3:多条件 AND

要求满足:地区=华南 且 销售额>20000

条件区域(例如 G1:H2):

地区 销售额
华南 >20000

公式:

=DCOUNT(A1:E11, "销售额", G1:H2)

示例 4:多条件 OR

要求满足:地区=华东 或 地区=华南(统计销售额为数字的记录数)

条件区域(例如 G1:G3):

地区
华东
华南

公式:

=DCOUNT(A1:E11, "销售额", G1:G3)

解释:条件区域两行表示 OR;会筛出地区为华东或华南的记录,再统计销售额字段里为数字的数量。


示例 5:field 用列序号而不是列名

假设 A1:E11 中,“销售额”是第 4 列,那么 field 可以写 4

=DCOUNT(A1:E11, 4, G1:H2)

当列名可能变化、或者你更习惯位置索引时,这种写法很方便。


示例 6:带日期条件(按区间筛选)

如果要统计 2025-01-10 之后(含)且地区为华东的“销售额为数字”的记录数:

条件区域(例如 G1:I2):

地区 日期 销售额
华东 >=2025-01-10 >=0

公式:

=DCOUNT(A1:E11, "销售额", G1:I2)

日期条件的写法依赖你数据列的日期是否是真正日期值(而不是文本)。真实日期在 Excel 中更稳定。


五、总结

  • DCOUNT 的核心能力:在“数据库式表格”中,按 criteria 设定的条件筛选记录,然后对 field 指定的字段进行数字计数(只数数字,不数文本/空白)。
  • 三要素必须齐全

    1. database 必须包含表头
    2. field 指向要统计的列(列名或序号)
    3. criteria 必须是包含表头的条件区域
  • 条件区域逻辑很重要:同一行是 AND,不同行是 OR。

  • 如果你要统计“非空数量”(数字+文本都算),优先考虑 DCOUNTA;如果你只关心数值型记录数量,DCOUNT 正合适。