将两列相乘并将乘积添加到某一行或单元格范围内?

将两列相乘并将乘积添加到某一行或单元格范围内?

SUM()即使行数增加,如何将两列相乘并将乘积相加( )?

例如,给定一个如下的电子表格:

  | A   B
--------------
1 | 2   132.27
2 | 2   122.33
3 | 2   150.15
4 | 3   149.35

我需要知道每行 A 列与 B 列相乘的总和以及每行的结果相加。

目前我正在使用这样的公式:

=(A2*B2+A3*B3+A4*B4+A5*B5+A6*B6+A7*B7+A8*B8)

问题是,随着行数的增加,我需要不断更新公式。

有没有更好的方法在 Excel 中自动执行此操作?

答案1

这正是 SUMPRODUCT() 的用途:

=SUMPRODUCT(A2:A8,B2:B8)

SUMPRODUCT 是一个数组类型公式。这意味着我们不想使用完整的列引用,因为它会对空单元格进行大量不必要的计算。

因此,为了使范围随着数据集的变化而增加(减少),我们可以结合 INDEX/MATCH 来查找带有数字的列中的最后一个单元格:

=SUMPRODUCT(A2:INDEX(A:A,MATCH(1E+99,A:A)),B2:INDEX(B:B,MATCH(1E+99,A:A)))

现在,它将根据 A 列和 B 列中的数据增大或缩小。它将使用数字设置从 A2 到 A 列的最后一个单元格的范围。

相关内容