DSUM 函数¶
一、函数概述¶
在 Excel 中,DSUM 属于“数据库函数(Database Functions)”的一员,用于在满足指定条件的记录(行)中,对某一列的数值进行求和。 它特别适合处理“看起来像数据库”的表格数据:首行是字段名、每行是一条记录、每列是一个字段。
你可以把 DSUM 理解为:
在一个数据表里,按条件筛选出一些行,然后对指定列求和。
常见使用场景包括:
- 按部门汇总销售额、按地区汇总利润
- 在多个条件组合下汇总(例如“华东 + 线上 + Q1”)
- 需要用“条件区域”做更灵活的筛选(如范围条件、通配符、多行 OR 条件)
二、基础语法¶
三、参数说明¶
| 参数 | 必填 | 含义 | 典型写法/说明 |
|---|---|---|---|
database |
是 | 数据库区域(数据表) | 必须包含标题行,如 A1:E100 |
field |
是 | 要求和的字段(列) | 可以用字段名(如 "销售额")或序号(如 3 表示第 3 列) |
criteria |
是 | 条件区域 | 必须包含条件标题行,如 G1:H2 |
1)database(数据库区域)的要求¶
- 必须是一个二维区域
- 第一行必须是字段名(列标题)
- 数据每一行是一条记录
2)field(字段)的两种写法¶
- 字段名(推荐):
"销售额" - 字段序号:
3(从database的第一列开始数)
实务中推荐使用字段名,阅读性更强,也更不容易因插列/删列导致出错。
3)criteria(条件区域)的规则(非常关键)¶
- 条件区域第一行也必须是“字段名”,且要与
database的字段名一致 - 条件区域从第二行开始写条件
- 同一行:AND(且)关系
- 不同行:OR(或)关系
四、基础用法示范¶
下面用一个例子贯穿讲解。假设数据表在 A1:E9:
| 日期 | 地区 | 部门 | 销售额 | 渠道 |
|---|---|---|---|---|
| 2025-01-02 | 华东 | A组 | 1200 | 线上 |
| 2025-01-03 | 华东 | B组 | 800 | 线下 |
| 2025-01-04 | 华南 | A组 | 1500 | 线上 |
| 2025-01-05 | 华北 | A组 | 700 | 线上 |
| 2025-01-06 | 华东 | A组 | 900 | 线下 |
| 2025-01-07 | 华南 | B组 | 1100 | 线上 |
| 2025-01-08 | 华东 | A组 | 600 | 线上 |
| 2025-01-09 | 华北 | B组 | 1300 | 线下 |
示例 1:按单一条件求和¶
条件区域放在 G1:G2:
| 地区 |
|---|
| 华东 |
公式:
含义:在 A1:E9 中筛选出“地区=华东”的行,对“销售额”列求和。
示例 2:多条件 AND 求和¶
条件区域放在 G1:H2:
| 地区 | 部门 |
|---|---|
| 华东 | A组 |
公式:
说明:同一行写多个条件,表示这些条件必须同时满足(AND),地区=华东 且 部门=A组。
示例 3:多条件 OR 求和¶
条件区域放在 G1:G3:
| 地区 |
|---|
| 华东 |
| 华南 |
公式:
说明:不同行写条件,表示满足任意一行即可(OR), 地区=华东 或 地区=华南。
示例 4:范围条件(销售额 >= 1000)¶
条件区域放在 G1:G2:
| 销售额 |
|---|
| >=1000 |
公式:
说明:条件单元格中可以直接写比较运算符,如 >=1000、<500 等。
示例 5:日期区间¶
日期区间通常用两列、同一字段名重复写来表达“下限 AND 上限”。例如条件区域在 G1:H2:
| 日期 | 日期 |
|---|---|
| >=2025-01-04 | <=2025-01-08 |
公式:
示例 6:通配符匹配(渠道以“线”开头)¶
条件区域 G1:G2:
| 渠道 |
|---|
| 线* |
公式:
说明:* 表示任意长度字符,? 表示单个字符。
比如:
线*:以“线”开头(线上、线下都匹配)??下:两位任意字符 + “下”(如“线下”不匹配,因为是两字;“某某下”才匹配)
五、总结¶
DSUM 是 Excel 中非常实用的“按条件汇总”函数,适合对结构化数据表进行快速统计。掌握它的关键点主要有:
- 数据表必须带字段名(标题行)
field建议使用字段名字符串,避免列变动引发问题-
条件区域的逻辑规则要牢记:
- 同一行多条件 = AND
- 不同行条件 = OR
-
条件写法灵活:支持比较运算符、通配符、区间条件(通过重复字段名实现)