Excel 求和到 "sum_range" 是两个范围的乘积?

Excel Sumifs to where "sum_range" is the product of two ranges?

我正在尝试让这行代码工作:

但是 Excel 不接受这个公式。

但是,如果我创建一个虚拟的“SPILL 范围”,我可以让它工作。

即如果我把这个代码放在单元格“D1”

那么这个 SUMIFS 工作正常:

为什么 SUMIFS 不能使用动态创建的范围?其他 Excel 功能似乎工作正常。

有没有什么方法可以在不使用帮助列或辅助 SPILL 函数的情况下将 SUMIFS 压缩为一个公式?

我正在使用 Excel 365.

并非所有采用范围的函数也采用数组 - VBA documentationSUMIFS() 的情况下明确说明 - 要求和的区域必须是范围。

这个基于 SUMPRODUCT() 的公式可能更适合您的目的

=SUMPRODUCT(($A:$A41*$B:$B41)*(C30:C5141=1))