2016-02-04 92 views
0

我有一个电子表格,basicly有看起来像这样的获取琛过滤基于另一列列的值日期

|01-Jan-16 (Fri) | Work | 0 | 0 | 3 | 0 | 9 | 7 | 0 | 0 | 

我一直在试图生成一个查询,将计算出总的每个几百行任何特定季度的列数。因此,它将基本上选择1-3,4-6,7-9,10-12个月的所有日期,并计算所有8列中的总价值。

我已经试过sumsif和SUMPRODUCT但我不能让它开始工作,我目前正在与

=SUMPRODUCT((MONTH('2016'!$A4:$A999)=1) * (MONTH('2016'!$A4:$A999)=2) * (MONTH('2016'!$A4:$A999)=3) * ('2016'!$C4:$C999)) 

=SUMIFS('2016'!C4:C999, '2016'!A4:A999, "<=3", '2016'!A4:A999, ">=1") 

=SUMPRODUCT((MONTH('2016'!$A4:$A999)>=1)*(MONTH('2016'!$A4:$A999)<=3)*('2016'!B4:B999)) 
+0

两个SUMPRODUCT公式应该工作。他们返回什么? A列中的日期是真的日期还是文本?如果文字,那么它将无法正常工作。 Sumifs无法工作,因为您没有从列A中提取月份。 – teylyn

回答

0

玩耍的日期字段不是日期值,而是一个字符串,所以这是什么造成问题。为了使它起作用,您需要提取比赛的日期值。我测试了这个基于你的例子创建的数据,它工作。

= SUMPRODUCT((MONTH(DATEVALUE(MID(A2:A5,1,9)))< = 3)*(C2:J5))

0

这为我工作。

=SUMPRODUCT((MONTH('2016'!$A4:$A999)=1) * (MONTH('2016'!$A4:$A999)=2) * (MONTH('2016'!$A4:$A999)=3) * ('2016'!$C4:$C999))