Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel SUMPRODUCT适用于2021年,但不适用于2020年_Excel_Excel Formula - Fatal编程技术网

Excel SUMPRODUCT适用于2021年,但不适用于2020年

Excel SUMPRODUCT适用于2021年,但不适用于2020年,excel,excel-formula,Excel,Excel Formula,这使用了命名的表,工作正常,得到了预期的13 =SUMPRODUCT(--(YEAR(Infra_SIM[Request Date])=2021),--(TEXT(MONTH(Infra_SIM[Request Date]),"mmm")="Jan"),--(Infra_SIM[Use For Reporting]="Yes")) 2020年的相同精确公式不起作用。它给我0,应该给12 可能有什么问题?问题不在于年份,而在于月份 您将

这使用了命名的表,工作正常,得到了预期的13

=SUMPRODUCT(--(YEAR(Infra_SIM[Request Date])=2021),--(TEXT(MONTH(Infra_SIM[Request Date]),"mmm")="Jan"),--(Infra_SIM[Use For Reporting]="Yes"))
2020年的相同精确公式不起作用。它给我0,应该给12


可能有什么问题?

问题不在于年份,而在于月份

您将它包装在文本函数中,它不会作为数组计算(它都返回第一个日期)

改变它

--(文本(月(表[列]),“mmm”=“Dec”)

--(月(表[列])=12)

编辑:

BigBen指出问题不在于TEXT()函数,而是MONTH()和TEXT()相互嵌套


--(TEXT(表[列],“mmm”)=“Dec”)是一个同样有效的解决方案。

有许多可能性。2020年日期可能存储为文本,而不是真实日期。或者
Yes
前面或后面有空格。很可能是数据相关的,而不是公式,因此我们只能猜测,因为我们没有您的数据。使用“评估公式”工具,逐步查看公式,看看它返回的数据与预期的不同。这是我第一次在答案上击败Scott Craner。仍然为+1,因为评估公式工具会捕捉到这一点。在此处删除
月份
,并在实际日期调用
文本
。或者使用
MONTH
并与发布的答案中概述的
12
进行比较。但是不要把
MONTH
TEXT
混在一起。我想你已经找到了这个问题,因为将
MONTH
的结果传递给
TEXT
没有任何意义。
=SUMPRODUCT(--(YEAR(Infra_SIM[Request Date])=2020),--(TEXT(MONTH(Infra_SIM[Request Date]),"mmm")="Dec"),--(Infra_SIM[Use For Reporting]="Yes"))