求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定

有读者请教如何计算加权平均值?说起这个,还得用我经常吹爆的神仙函数 sumproduct , 而且过程极其简单 。


案例:



下图 1 是各销售人员的获客详情列表,每个销售的每次获客数和平均获客成本都不一样,请计算出每位销售的平均获客成本 。
【求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定】

效果如下图 2 所示 。
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定

求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



解决方案:



1. 将 A 列复制粘贴到 E 列
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



2. 选中 E 列的数据表区域 --> 选择菜单栏的“数据”-->“删除重复值”
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



3. 在弹出的对话框中选择“以当前选定区域排序”--> 点击“删除重复项”
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



4. 在弹出的对话框中保留默认设置 --> 点击“确定”
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



5. 点击“确定”
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定

求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



6. 在 F 列将表格补充完整 , 可以用格式刷将 C 列的格式复制粘贴过来 。
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



7. 在 F2 单元格中输入以下公式 --> 下拉单元格复制公式:
=SUMPRODUCT(($A$2:$A$21=E2)*$B$2:$B$21*$C$2:$C$21)/SUMIF($A$2:$A$21,E2,$B$2:$B$21)


公式看似有点长,其实分段拆解一点不难 。


公式释义:
  • $A$2:$A$21=E2:将 A 列的每个单元格与 E2 相比,得到一组由 true 或 false 组成的数值;
  • ...*$B$2:$B$21*$C$2:$C$21:将上述数组与 B 列和 C 列相乘 , 即可得出一个由“王钢蛋”的每次获客总成本和 0 组成的数组;
  • SUMPRODUCT(...):最后用 sumproduct 对数组求和,即可得出“王钢蛋”所有获客的总成本;
  • SUMIF($A$2:$A$21,E2,$B$2:$B$21):计算出“王钢蛋”的总获客数;
  • 将上述两个字段相除,就是加权平均后的获客成本 。


* 请注意参数中的绝对和相对引用 。
求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定

求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定

求加权平均值,不会有人用 Excel 做算数吧?明明一个函数就能搞定



很多同学会觉得 Excel 单个案例讲解有些碎片化 , 初学者未必能完全理解和掌握 。不少同学都希望有一套完整的图文教学 , 从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点 。
现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手 。

相关经验推荐