![如何计算两个日期的差值](https://linux22.com/image/1521831/%E5%A6%82%E4%BD%95%E8%AE%A1%E7%AE%97%E4%B8%A4%E4%B8%AA%E6%97%A5%E6%9C%9F%E7%9A%84%E5%B7%AE%E5%80%BC.png)
我在 excel 中有两个日期:2008 年 11 月 1 日和 2017 年 2 月 28 日。我想计算这两个日期之间的差值,这样如果月份差超过 6 个月,则应将其视为 1 年并将其添加到年份中。现在我插入了以下公式
=ROUNDUP((YEAR(E245)-YEAR(D245))+(IF(MONTH(E245)-MONTH(D245)>6,1,0))/12,0)
(E245 和 D245)是 Excel 中的单元格引用)
上述公式得出的结果为 9 年,而如果我手动计算,结果为 8 年。有人能解决这个问题吗?如能得到任何帮助,我将不胜感激。
答案1
你的方法没有考虑到较高日期的月份小于较低日期的月份的情况。将每个日期转换为月份数,减去,除以十二,然后将结果四舍五入。
=ROUND(((YEAR(E245)*12+MONTH(E245))-(YEAR(D245)*12+MONTH(D245)))/12,0)
不确定哪个更贵,ROUND
或者INT
,所以你也可以做
=INT(((YEAR(E245)*12+MONTH(E245))-(YEAR(D245)*12+MONTH(D245)))/12+0.5)
将 0.5 添加到商中将向上舍入,并将截断为整数。与其他函数INT
效果相同。ROUND