在单元格Excel数组公式中使用IF公式的结果

我有一个列J与下面的数组公式:

 =IF(ISNUMBER($H$5:$H$263), $H$5:$H$263, $I$5:$I$263) 

引用该列内容的摘要行上的单元格:

 =SUMIF($J$5:$J$267,"<"&(TODAY()+365), $L$5:$L$263) 

以上给出了我想要的结果,但是我想将其合并成一个公式。

我已经尝试了以下内容:

 =SUMIF(IF(ISNUMBER($H$5:$H$263), $H$5:$H$263, $I$5:$I$263),"<"&(TODAY()+365), $L$5:$L$263) 

但是最终只会对IF左侧的内容进行总结

所以下面可以得到我想要的:

 =SUMIF(IF(ISNUMBER($H$5:$H$263), $I$5:$I$263, $H$5:$H$263),"<"&(TODAY()+365), $L$5:$L$263) + SUMIF(IF(ISNUMBER($H$5:$H$263), $H$5:$H$263, $I$5:$I$263),"<"&(TODAY()+365), $L$5:$L$263) 

但是我不确定我在做什么第一个短的公式错了。

使用这个数组公式:

 =SUM(IF(IF(ISNUMBER($H$5:$H$263),$H$5:$H$263,$I$5:$I$263)<TODAY()+365,$L$5:$L$263)) 

作为一个数组公式,在退出编辑模式时,需要使用Ctrl-Shift-Enter而不是Enter来确认。 如果正确完成,则Excel将在公式周围放置{}

您可以使用SUMPRODUCT而不需要CSE:

 =SUMPRODUCT(((ISNUMBER($H$5:$H$263)*($H$5:$H$263)+(NOT(ISNUMBER($H$5:$H$263)) * ($I$5:$I$263)))<TODAY()+365)*$L$5:$L$263) 

我还build议使用EDATE(TODAY(),12)代替TODAY()+365来处理闰年。