如何在 excel 中将 subtotal 与 sumproduct 结合使用
您可以使用以下公式在 Excel 中组合SUBTOTAL和SUMPRODUCT函数:
=SUMPRODUCT( C2:C11 ,SUBTOTAL(9,OFFSET( D2:D11 ,ROW( D2:D11 )-MIN(ROW( D2:D11 )),0,1)))
这个特定的公式允许您对范围C2:C11和范围D2:D11的值的乘积求和,即使该单元格范围已以某种方式过滤后也是如此。
下面的例子展示了如何在实践中使用这个公式。
示例:如何在 Excel 中将 SUBTOTAL 与 SUMPRODUCT 结合使用
假设我们有以下数据集,其中包含有关两个不同杂货店各种产品的销售信息:
接下来,我们过滤数据以仅显示 Store 列中值为B的行。
为此,请突出显示单元格区域A1:D11 。然后单击顶部功能区的“数据”选项卡,然后单击“过滤器”按钮。
然后单击Store旁边的下拉箭头,并确保仅选中B旁边的框,然后单击OK :
数据将被自动过滤以仅显示 Store 列等于B的行:
如果我们尝试使用SUMRPODUCT()函数对 Sales 和 Price 列值的乘积求和,它实际上会返回原始数据集中这两列的乘积之和:
相反,我们需要使用以下公式:
=SUMPRODUCT( C2:C11 ,SUBTOTAL(9,OFFSET( D2:D11 ,ROW( D2:D11 )-MIN(ROW( D2:D11 )),0,1)))
以下屏幕截图显示了如何在实践中使用该公式:
此公式返回正确的总和77.5 。
我们可以通过手动计算 Sales 和 Price 列之间的值的乘积之和来确认这是正确的:
销售额和价格之间的值的乘积之和: (3*2) + (12*2.5) + (5*3.5) + (8*3) = 77.5 。
其他资源
以下教程介绍了如何在 Excel 中执行其他常见操作: