我怎样才能把一个SUMIFS在Excel中包含一个OR?

我试图把一个定期付款的日历,将有一个开始的date,一天的钱支付和date取消(如果有的话),但我很努力设置我的SUMIFSfunction。 我在这里设置了一个例子。

我想要做的是在付款当天添加付款价值,如果开始date小于date,并且只有取消date为空或date在取消date之前。

付款清单:

ABC 1 Payment | Begun | Cancelled ---------+------------+------------ 2 £5.00 | 01/01/2016 | 3 £9.00 | 04/01/2016 | 01/02/2016 

日历(我期望的):

  EF 1 Date | Payment ----------+--------- 2 01/01/16 | £5.00 3 02/01/16 | £0.00 4 03/01/16 | £0.00 5 04/01/16 | £9.00 ... 33 01/02/16 | £5.00 34 02/02/16 | £0.00 35 03/02/16 | £0.00 36 04/02/16 | £0.00 

所以在这个例子中:在01/01/16和01/02/16上应该增加5英镑,而在04/01/16上只应该增加9英镑。

到目前为止在F列我有:

 =SUMIFS($A$2:$A$3, DAY($B$2:$B$3), "="&DAY(E2), $B$2:$B$3, "<="&E2, $C$2:$C$3, ">="&E2) 

F2中的这个数组公式应该做你想要的:

 =SUM(IF((DAY($B$2:$B$3)=DAY(E2))*(E2>=$B$2:$B$3)*(E2<=$C$2:$C$3),$A$2:$A$3))+SUM(IF((DAY($B$2:$B$3)=DAY(E2))*(E2>=$B$2:$B$3)*(""=$C$2:$C$3),$A$2:$A$3)) 

这是一个数组公式,必须用Ctrl-Shift-Enter确认。 然后复制下来。

数组公式中的“OR”必须使用+ 。 如果你所有的都是AND而且*会起作用。

在这里输入图像说明

我假设你将要添加date列A:C,你可以改变所有的小绝对范围到所需的范围,它将工作倍数。

请原谅我们的倒退date。

你应该在你的情况下添加两个单独的SUMIF()的结果: =SUMIFS($A$2:$A$3, DAY(B$2:B$3), "="&DAY(E2), $B$2:$B$3, "<="&E2, $C$2:$C$3,">="&E2) + SUMIFS($A$2:$A$3, DAY(B$2:B$3), "="&DAY(E2), $B$2:$B$3, "<="&E2, ISBLANK($C$2:$C$3),TRUE)

按Ctrl + Shift +确认