CASE 1
数量与金额乘积求和
★★★要求:数量与金额乘积求和fx公式示例
=SUMPRODUCT($H$8:$H$13,$I$8:$I$13)
解释:SUMPRODUCT 会把两个区域同一行的数字先相乘,再把所有乘积加总。这里直接使用模拟数据里的数量列和金额列,不再手写数组常量。
| # | 参数 | 要求 | 怎么理解 / 怎么填 |
|---|---|---|---|
| 1 | 数组1 | 必填 | 要参与计算或返回结果的单元格区域/数组。 |
| 2 | 数组2 | 选填 | 要参与计算或返回结果的单元格区域/数组。 |
① 找到数据区域
先确认条件列和结果列在哪,注意固定区域加 $
② 按顺序填参数
依次填 数组1
③ 回车并向下填充
双击填充柄,整列公式自动套用
=SUMPRODUCT($H$8:$H$13,$I$8:$I$13)
解释:SUMPRODUCT 会把两个区域同一行的数字先相乘,再把所有乘积加总。这里直接使用模拟数据里的数量列和金额列,不再手写数组常量。
=SUMPRODUCT(($F$8:$F$13="销售部")*$I$8:$I$13)
解释:括号里的部门判断会得到 TRUE/FALSE,参与计算时会变成 1/0。销售部对应 1,非销售部对应 0,所以最后只汇总销售部金额。
=SUMPRODUCT(($F$8:$F$13="销售部")*($G$8:$G$13="华东")*$H$8:$H$13)
解释:两个条件分别判断部门和区域,只有同时满足时乘积才为 1。再乘以数量列,就能汇总销售部且华东区域的数量。
=SUMPRODUCT(($G$8:$G$13="华东")*($I$8:$I$13>15000))
解释:这里没有再乘金额或数量,而是把两个判断结果相乘。满足区域为华东且金额大于 15000 的行会得到 1,最后加总就是符合条件的记录数。
=SUMPRODUCT($I$8:$I$13,$H$8:$H$13)/SUM($H$8:$H$13)
解释:先用 SUMPRODUCT 计算金额按数量加权后的总和,再除以数量合计。这个写法适合理解“权重”在平均值中的作用。
=SUMPRODUCT((MONTH($D$8:$D$13)=1)*$I$8:$I$13)
解释:MONTH 先把日期列转换成月份,等于 1 的行代表 1 月记录。再乘以金额列,就能汇总 1 月金额。
上面案例里的 日期、项目 等列,就来自这张表
| 行 | 日期 | 项目 | 部门 | 区域 | 数量 | 金额 |
|---|---|---|---|---|---|---|
| 8 | 2024-01-05 | 笔记本电脑 | 销售部 | 华东 | 12 | 72,000 |
| 9 | 2024-01-12 | 显示器 | 销售部 | 华南 | 20 | 36,000 |
| 10 | 2024-02-03 | 键盘 | 市场部 | 华东 | 35 | 17,500 |
| 11 | 2024-02-18 | 鼠标 | 销售部 | 华北 | 48 | 14,400 |
| 12 | 2024-03-09 | 移动硬盘 | 市场部 | 华南 | 16 | 12,800 |
| 13 | 2024-03-21 | 打印机 | 财务部 | 华东 | 8 | 16,000 |