如何计算多年范围内的天数

有没有办法可以计算特定年份范围内的天数?

例如,(我的专栏是员工,开始date,结束date,DK =年份2009-2016年)如果我的开始date是1/5/2008,并且我的结束date是2011年6月9日,我想知道2008年,2009年,2010年和2011年之间的这段时间已经过去了很多天。

我试过以下

=IF(ISNUMBER(SEARCH(D$1,$B2))=TRUE,(DATEDIF($B2,$C2,"d"))/30,0)

但是只返回最早一年范围内的天数,如果范围跨越多年,则不分配下一年的天数。

获得两个date范围重叠的标准公式是

 =MAX(MIN(end1,end2)-MAX(start1,start2)+1,0) 

例如,请参阅此参考

所以适应你的情况下,给几年

 =MAX(MIN($C2,DATE(D$1,12,31))-MAX($B2,DATE(D$1,1,1))+1,0) 

在这里输入图像说明

为什么除以30?

= DATEDIF(B2,C2,“d”)适合我。

在这里输入图像说明

这应该让你开始…它需要工作,但build立在此,你应该在你的路上。

在这里输入图像说明

 =IF($B$2<DATE(D1,1,1), IF($C$2>DATE(D1,12,31), DATEDIF(DATE(D1,1,1),DATE(D1,12,31), "d"), DATEDIF(DATE(D1,1,1),$C$2,"d")),DATEDIF($B$2,DATE(D1,12,31),"d"))