AVERAGEIF 函数¶
1. 函数概述¶
AVERAGEIF 用于按条件计算平均值:在一组数据中,先筛选出满足指定条件的单元格,再对这些单元格(或另一组对应单元格)求平均。
你可以把它理解为:“有条件的 AVERAGE(平均值)”。它在日常数据分析中很常见,比如:
- 计算“某个品类”的平均销量
- 统计“分数大于等于 60”的平均分
- 求“某区域”的平均订单金额
- 按条件对一列筛选,再对另一列求平均(例如筛选城市后算客单价)
2. 基础语法¶
3. 参数说明¶
| 参数名 | 是否必填 | 含义 | 常见填写方式 |
|---|---|---|---|
range |
必填 | 用于判断条件的区域 | 一列/一行数据,如 A2:A100 |
criteria |
必填 | 筛选条件 | 数字、表达式、文本、通配符,或引用单元格 |
[average_range] |
可选 | 实际求平均的区域 | 与 range 形状一致的区域,如 B2:B100 |
重点:
- 不写
average_range:对range中满足条件的单元格本身求平均- 写了
average_range:用range做条件筛选,但对average_range中对应位置的数据求平均
3.1 criteria(条件)写法速查¶
| 条件类型 | 示例 | 说明 |
|---|---|---|
| 数值比较 | ">=60"、"<100" |
必须用引号包起来 |
| 等于某值 | "北京"、"A" |
文本条件需要引号 |
| 引用单元格 | E2 或 ">"&E2 |
纯“等于”可直接引用;带比较符要拼接 |
| 通配符 | "A*"、"*销售*" |
* 任意长度字符;? 单个字符 |
4. 基础用法示范¶
下面用一份简单的数据来演示。假设你有如下表格:
| A列:地区 | B列:销售额 | C列:订单数 |
|---|---|---|
| 华东 | 1200 | 12 |
| 华北 | 800 | 9 |
| 华东 | 1500 | 15 |
| 华南 | 900 | 10 |
| 华东 | 1100 | 11 |
4.1 对满足条件的“同一列”求平均¶
需求:计算销售额中 大于等于 1000 的平均值。
解释:
- 条件判断区域是
B2:B6 - 满足
>=1000的那些销售额本身参与平均
4.2 按文本条件筛选¶
需求:计算“华东”地区的平均销售额。
解释:
A2:A6用来判断是否为“华东”B2:B6用来计算平均销售额
4.3 条件来自单元格¶
假设 E2 填的是地区(例如 华东),你希望公式可随 E2 改动自动统计:
这类写法非常适合做报表模板或仪表板。
4.4 “比较符 + 单元格”的条件拼接¶
假设 E2 是阈值(例如 1000),需求是:销售额 大于等于 E2 的平均订单数(注意:这里平均的是订单数,不是销售额)。
解释:
- 用
B2:B6判断是否达到阈值 - 对应行的
C2:C6订单数参与平均
4.5 通配符条件:按前缀/包含关系筛选¶
需求:统计所有地区名以“华”开头的平均销售额(如“华东/华北/华南”)。
如果想统计地区名包含“东”的平均销售额:
5. 总结¶
AVERAGEIF 是 Excel 中用于单条件平均的核心函数,掌握它基本就能覆盖大量“按条件算平均”的需求。
- 用
range指定“筛选依据” - 用
criteria写清楚“筛选条件”(尤其注意比较符要用引号,引用阈值要拼接) - 需要“筛选一列、平均另一列”时,别忘了填
[average_range] - 文本筛选和通配符(
*、?)在分组统计里非常高频