SUMPRODUCT和WEEKDAY忽略#VALUE错误,但保留值

我非常感谢你的帮助。

我有一个电子表格,每个星期换一个新的。 但它周一至周五logging我们的数字。 date列(D列),发票时间列(N列)和WEEKDAYlogging小时总数的单元格出现问题。

跟踪总数的单元格是#VALUE错误出现的地方(我知道为什么,但我会做到这一点)。 公式是这样的:

=SUMPRODUCT((WEEKDAY(D902:D978)=2)*N902:N978) 

在这种情况下,它将跟踪星期一的号码。 它实际上工作正常,除了我有一个想法自动化D列中的date:

 =IF(AND(B904<>"", D903=TODAY()-1), D903+1, IF(AND(B904<>"",D903<>TODAY()-1),D903,IF(B904="","",""))) 

(B栏是公司的名称,数字和小时归属)。

正如你可能猜到的那样,由于列D中空白单元格中的上述公式导致了一个#VALUE错误。如果我使用SUMIFS,它会忽略错误,但是我无法得到它适应WEEKDAY函数。 SUMPRODUCT包含WEEKDAY函数,但是我不能让它保留值,而是忽略包含公式的空单元格。

请让我知道,如果我需要澄清以任何方式。

这有点难以遵循,但试试这个:

 =SUMPRODUCT((ISERR(D902:D978)=FALSE)*(WEEKDAY(D902:D978)=2)*N902:N978) 

或这个…

 =SUMPRODUCT((ISBLANK(D902:D978)=FALSE)*(WEEKDAY(D902:D978)=2)*N902:N978) 

数组公式将会做你正在寻找的东西。

您现有的公式将从SUMPRODUCT转换为具有IFERROR公式的SUM

 =SUM(IFERROR((WEEKDAY(D902:D978)=2)*N902:N978,0)) 

您将需要使用Ctrl + Shift + Enterinput

input正确时,您会在公式周围看到{}