我在想出一个公式来执行以下操作时遇到了一些麻烦。假设我有一张如下表格:
X 100 1000
200
200
500
Y 400 1250
400
300
150
Z 430 910
330
150
我想对 A 列中每个非空白单元格的 B 列求和,以便结果如上所示。例如,A 列的总和为 1000,因此 1000 放在 C 列中。这可行吗?
答案1
有很多奇特的方法可以做到这一点,但简单直观的方法是使用辅助列。假设您的示例位于 A2:C12。使用 D 列作为辅助列,将 A 列信息转换为易于使用的形式。在 D2 中,公式将是:
=IF(ISBLANK(A2),D1,A2)
将其复制到所有数据行的列中。它会用上面的值填充空白。
则在 C2 中,公式为:
=IF(ISBLANK(A2),"",SUMIF(D$2:D$9,A2,B$2:B$9))
更改行范围以匹配您的数据,然后将其复制到列中。对于 A 列中有值的任何行,只要 D 列的值相同,它就会对 B 列中的值求和。您可以隐藏 D 列或使用不在视图中的列。