2016-05-16 87 views
0

试图让Sumproduct评估和计算同一工作表中多列中包含的数据。使用SUMPRODUCT来计算多个条件

  • Column "A"不应该是空白
  • Column "B"有2016 date值,希望通过每个日历月报告
  • Column "E"不应该是空白
  • Column "AD"应该只要Column "E"有一个价值数在同一行。
  • 文本“损失”是不存在的column "AD"

为下面的示例中正确的计数将在三(3)!

enter image description here

这就是我想出了这么远,但不工作:

{=SUMPRODUCT(--(YEAR('Sheet1'!$B3:$B502)=2016)*(MONTH('sheet1'!$B3:$B502)=5)*('sheet1'!$E3:$E502<>""))-(('sheet1'!$AD3:$AD502)<>"Loss")} 

可以这样做?

+0

证明如果你是为特定月份的报告则对于例如正确的计数是两(2)三月份。请澄清。 – skkakkar

+0

我正在等待待处理的编辑显示,因此逻辑语句可以作为项目符号点或至少单独的行布局 –

+0

由于AD4列的文本为“Loss”,因此March的正确计数仅为1(1),不应该是根本不管E列中的内容如何。 – Shrewd1

回答

1
=SUMPRODUCT(($A2:$A7<>"")*(YEAR($B2:$B7)=2016)*($C2:$C7<>"")*($D2:$D7<>"Loss")) 

这应该算全行数其中:

A不是空
B是2016年
E不是空
广告没有损失

只有当ALL那些条件是否真实会连续计数。上述公式在H1中。

如果你想要每月的细分,你需要把每个月的计数条件。所以在G1中,我使用了下面的公式并复制了12行。

=SUMPRODUCT(($A$2:$A$7<>"")*(YEAR($B$2:$B$7)=2016)*($C$2:$C$7<>"")*($D$2:$D$7<>"Loss")*(MONTH($B$2:$B$7)=ROW(A1))) 

行(A1)充当计数器。

概念

enter image description here

+0

它适用于年份,但我需要在每个日历月分解。 – Shrewd1

+0

想通了......谢谢转发! – Shrewd1

+0

它最初并不是每个月都会爆发出来的,正如你在之前的评论中所说的那样,答案是三个,因为你将你的月份分组在一起 –