首先,我们用=DATEDIF(开始日期,终止日期,"m")计算出整数月
其次,我们用=DATEDIF(开始日期,终止日期,"md")计算出整数月之外的剩余天数
然后,我们用剩余天数除开始日期或终止日期当月的总天数。这时就需判断,如果终止日期的天数大于开始日期的天数,就取终止日期的当月总天数,反之取开始日期的当月总天数=DATEDIF(开始日期,终止日期,"md")/(IF(DAY(开始日期)>DAY(终止日期),DAY(EOMONTH(开始日期,0)),DAY(EOMONTH(终止日期,0)))
最终的公式=DATEDIF(开始日期,终止日期,"m")+DATEDIF(开始日期,终止日期,"md")/(IF(DAY(开始日期)>DAY(终止日期),DAY(EOMONTH(开始日期,0)),DAY(EOMONTH(终止日期,0))))
我们还可以用ROUND进行四舍五入确定要保留的小数位数=ROUND(DATEDIF(开始日期,终止日期,"m")+DATEDIF(开始日期,终止日期,"md")/(IF(DAY(开始日期)>DAY(终止日期),DAY(EOMONTH(开始日期,0)),DAY(EOMONTH(终止日期,0)))),4)