0Pricing
Excel Formulas Academy · 课时

使用 AVERAGEIF 按条件求平均值

仅计算满足指定判断的数值的平均值

使用 AVERAGEIF 按条件求平均值 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。

仅计算匹配项的平均值

您已经使用 SUMIF 求和、使用 COUNTIF 计数。这个系列中的第三个成员是 AVERAGEIF,它只计算符合条件的值的平均值。

您不必计算所有销售额的平均值,而是可以只计算东部区域销售额的平均值,或者只计算高于 50 分的分数的平均值。它将筛选和求平均这两个步骤合并为一个简洁的操作。

AVERAGEIF 的模式

AVERAGEIF 使用与 SUMIF 相同的三部分结构:

  • 范围 要测试的单元格
  • 条件 条件内容
  • 平均范围 要计算平均值的单元格

它会检查范围,找出匹配项,然后对平均范围中对应的单元格计算平均值。

=AVERAGEIF(range, criteria, average_range)

第一个完整示例

区域位于 A2:A10,金额位于 B2:B10 时,要计算东部区域的平均销售额,就需要测试 A 列中的东部区域,并计算 B 列中匹配值的平均值。

在后台,它实际上是在用 SUMIF 除以 COUNTIF,但 AVERAGEIF 将这一过程封装成了一个易读的公式。

=AVERAGEIF(A2:A10, "East", B2:B10)

测试范围和平均范围相同

如果您测试的列也是想要计算平均值的列,就可以省略第三个参数。要计算 B2:B10 中高于 70 的分数的平均值:

这里的 B 列既是测试范围,也是平均范围。省略第三个参数时,电子表格会同时将范围用作这两个范围。

=AVERAGEIF(B2:B10, ">70")

引用条件单元格

与其他 IF 函数一样,将条件存储在单元格中可以提高灵活性。如果 D1 中存放着区域名称,请将条件指向 D1。

现在,一个单元格就可以控制平均值。将 D1 从东部改为西部后,结果会立即重新计算,非常适合汇总表或仪表板选择器。

=AVERAGEIF(A2:A10, D1, B2:B10)

比较条件

AVERAGEIF 和它的同类函数一样,也接受放在引号中的运算符。要计算至少为 100 的销售额的平均值:

  • ">=100" 100 或更高
  • "<50" 低于 50
  • "<>0" 排除零值

最后一种用法很受欢迎,因为它在计算平均值时会忽略零值,避免零值将平均值拉低。

=AVERAGEIF(B2:B10, ">=100")

连接到单元格的运算符

要使用单元格中的阈值,请用与号将运算符连接到该单元格。如果 D1 中存放着阈值,请计算所有高于该阈值的值的平均值。

& 会根据 ">" 和 D1 中的值构建条件文本。这与您在 SUMIF 和 COUNTIF 中使用的连接技巧相同。

=AVERAGEIF(B2:B10, ">"&D1)

注意 DIV/0 错误

AVERAGEIF 有一个其他函数没有的陷阱。如果没有行匹配,就没有可供除法使用的数值,您会得到 #DIV/0! 错误。

例如,对数据中不存在的区域计算平均值就会返回此错误。这表示筛选条件匹配了零个单元格,并不表示您的公式有问题。

=AVERAGEIF(A2:A10, "North", B2:B10)

处理没有匹配项的情况

将公式嵌套在 IFERROR 中,这样在没有匹配项时就能显示友好的消息,而不是显示 #DIV/0!。

现在,空的区域会显示“无数据”,而不是令人担忧的错误。即使某些类别缺失,也能让报告保持整洁。

=IFERROR(AVERAGEIF(A2:A10, D1, B2:B10), "No data")

跳过空白,不将其计入

AVERAGEIF 只会在匹配项中对包含数字的单元格计算平均值。平均范围中的真正空白单元格会被忽略,因此不会被当作零计入。

这一点很重要:缺失值不会像实际的 0 那样将平均值拉向零。如果您还想排除零值,请在数值列上添加条件 "<>0"。

=AVERAGEIF(B2:B10, "<>0")

更深入的示例:按类别计算平均值

请构建一个整洁的汇总表:在 D2、D3、D4 单元格中分别列出每个类别,然后写入一个引用标签单元格的 AVERAGEIF,并向下填充。

现在每一行都会显示其所属类别的平均值,并与前面课程中的 SUMIF 总计和 COUNTIF 计数并排显示。三者结合起来,就构成了一份紧凑且完全由公式驱动的报告。

=AVERAGEIF(A:A, D2, B:B)

快速检查

检验您对 AVERAGEIF 行为的理解。

回顾:AVERAGEIF

现在您可以使用 AVERAGEIF 按条件计算平均值了。要点如下:

  • 顺序是 范围、条件、平均范围;省略最后一个参数即可对测试范围本身计算平均值。
  • 它支持文本、数字以及 ">=100" 这样的运算符。
  • 没有匹配项时会产生 #DIV/0! 错误,因此请使用 IFERROR 进行处理。
  • 空白单元格会被跳过,不会被当作零。

接下来,您将使用通配符匹配部分文本。

=AVERAGEIF(A2:A10, "East", B2:B10)

常见问题解答

「使用 AVERAGEIF 按条件求平均值」课时是免费的吗?

是的 — 「使用 AVERAGEIF 按条件求平均值」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。

「使用 AVERAGEIF 按条件求平均值」这节课中我会学到什么?

仅计算满足指定判断的数值的平均值 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Excel Formulas Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「使用 AVERAGEIF 按条件求平均值」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Excel Formulas Academy 课中编写并运行代码吗?

能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 使用 SUMIF 按条件求和
  2. 使用 COUNTIF 按条件计数
  3. 使用 AVERAGEIF 按条件求平均值
  4. 在条件中使用通配符
← 返回 Excel Formulas Academy