0

我们有一个相当复杂的数组问题,我们正在努力克服:

这是我们用来根据满足的单个参数对各个列求和的标准数组公式,在本例中为值 $k$6,位于 F 列中。

=SUM(('EVERYTHING PIVOT'!$F$5:$F$100000=$K$6)*('EVERYTHING PIVOT'!$K$5:$K$100000))

但是,我们现在希望对范围内最新日期之前 30 天的那组日期的值求和。

日期列 A 中的值将满足此条件:

">"&MAX($A$5:$A$100000)-30

但是我看不到将它作为附加参数集成到第一个数组公式中的方法,因为数组公式只能使用单个值而不是范围。

我有什么我在这里想念的吗?

4

2 回答 2

1

对于您的原件,您最好使用这样的 SUMIF,即

=SUMIF('EVERYTHING PIVOT'!$F$5:$F$100000,$K$6,'EVERYTHING PIVOT'!$K$5:$K$100000)

如果您有 Excel 2007 或更高版本(可能您有,否则您不能使用 100,000 行),您可以在SUMIFS函数中添加一个标准,即

=SUMIFS('EVERYTHING PIVOT'!$K$5:$K$100000,'EVERYTHING PIVOT'!$F$5:$F$100000,$K$6,'EVERYTHING PIVOT'!$A$5:$A$100000,">"&MAX($A$5:$A$100000)-30)

注意 SUMIFS 的语法不同,求和范围在开头

在旧版本的 excel 中,您可以像这样修改数组公式

=SUM(('EVERYTHING PIVOT'!$F$5:$F$100000=$K$6)*('EVERYTHING PIVOT'!$K$5:$K$100000)*('EVERYTHING PIVOT'!$A$5:$A$100000>MAX($A$5:$A$100000)-30 ))

于 2012-10-10T10:11:17.177 回答
1

如果您使用的是 Excel 2007 或更高版本,请考虑使用SUMIFS

=SUMIFS('EVERYTHING PIVOT'!$K:$K,
        'EVERYTHING PIVOT'!$F:$F,$K$6,
        'EVERYTHING PIVOT'!$A:$A,">"&MAX('EVERYTHING PIVOT'!$A:$A)-30)

SUMIFS在满足多个条件的区域中添加单元格

SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

如果使用 excel 2003 或更早版本,您可以使用SUMPRODUCT

于 2012-10-10T10:11:47.613 回答