如何在 COUNTIFS 中根据三个条件按月嵌套 SUMPRODUCT

如何在 COUNTIFS 中根据三个条件按月嵌套 SUMPRODUCT

如何在 COUNTIFS 中嵌套按月计算的 SUMPRODUCT,以满足三个条件。我需要计算在状态列中为“已发行”的项目数量,这些项目是在特定年份“2018 年”的该月 2 月份发行的。

=COUNTIFS(Table5[Application Year],'BP Dash Board'!B10,Table5[Status],"Issued",Table5[Application Date],SUMPRODUCT(1*(MONTH(Table5[Application Date])='BP Dash Board'!D9)))

我需要总和乘积才能提取日期中的特定月份。每个参数都可以独立使用,但我需要所有三个条件都匹配后才能计算它们。

谢谢你!

答案1

您可以跳过使用 COUNTIFS,只需使用 SUMPRODUCT 和每个条件前面的双重否定运算符,并将条件本身括在括号中。双重否定运算符将 TRUE/FALSE 数组转换为 1/0 数组:

=SUMPRODUCT(--(MONTH(Table5[Application Date])=$G$1),--(Table5[Application Year]=$G$3),--(Table5[Status]=$G$2))

在此处输入图片描述

答案2

删除 COUNTIFS(),SUMPRODUCT() 可以自行处理这个问题。

=SUMPRODUCT((MONTH(Table5[Application date])='BP Dash Board'!D9)*(Table5[Application Year]='BP Dash Board'!B10)*(Table5[Status]="Issued"))

答案3

您也可以使用来实现您想要的效果COUNTIFS。但是由于要与单元格值匹配的日期是 TABLE 范围的一部分,因此需要调整公式以进行 DATE 检查,而不是标准COUNTIFS语法。

在此处输入图片描述

  • 单元格中的公式F7

    =COUNTIFS(MyData[Date],">=02/01/2020",MyData[Date],"<=2/29/2020",MyData[Year],F$3,MyData[Status],F$4)
    

注意:

- COUNTIF 和 COUNIFS 都无法正常与 MONTH 函数配合使用来测试月份。

  • 如果使用这个,{=MONTH(MyData[Date])=F2}您将得到 FALSE。因为{=MONTH(MyData[Date])}返回 1,代表一月。

  • 如果使用这些公式,则返回零。

    =COUNTIF(MyData[Date],(--(MONTH(MyData[Date])=F2)))
    

 =COUNTIFS(MyData[Date],$F$2,MyData[Year],$F$3,MyData[Status],$F$4)

你也可以尝试这个:

=COUNT(IF(MONTH(MyData[Date])=F$2,0))+COUNT(IF(MyData[Year],F$3,0))+COUNT(IF(MyData[Status],F$4,0))

相关内容