SUMIF基于另一个工作表名称和月份

时间:2017-06-23 18:37:54

标签: excel sumifs

我试图写一个公式,我可以让它在部分工作,但不是全部。我想我可能需要一个数组公式,我没有经验。

公式应该从工作表" 2017"中提取数据。我希望它对位于R列中的任何数字求和。该行的F或G列中的值为" Name"并且N列中的日期是1月份。

2 个答案:

答案 0 :(得分:1)

当查看两个不同的范围时,SUMIFS()不喜欢OR,因此您需要使用SUMPRODUCT并将范围限制为仅数据集:

=SUMPRODUCT(R1:R100,((G1:G100 = "Name")+(F1:F100="Name")>0)*(MONTH(N1:N100) = 1))

根据您的意见,您的公式应为:

=SUMPRODUCT('2017'!R1:R100,(('2017'!G1:G100 = "Allison Jones")+('2017'!F1:F100="Allison Jones")>0)*(MONTH('2017'!N1:N100) = 1))

避免使用完整的列引用,因为这是一个数组类型公式,它会减慢计算速度。

答案 1 :(得分:0)

我在第一次尝试时严重误读了Q.我应该建议的是:

=SUMIFS(R:R,F:F,"Name",N:N,">=42736",N:N,"<42767")+SUMIFS(R:R,G:G,"Name",N:N,">=42736",N:N,"<42767")-SUMIFS(R:R,F:F,"Name",G:G,"Name",N:N,">=42736",N:N,"<42767")

不优雅但仅使用SUMIFS函数通过添加&#34; F&#34;的所有情况来获得结果。标准适用于&#34; G&#34;标准适用并减去两个&#34; F&#34;和&#34; G&#34;标准适用。

4273642767是2017年1月初和2017年2月开始的1900年日期系统中的序列号。&#39;或等于&#39;是为了允许列N可能包含时间。