在实际应用中,计算天数是经常遇到的一项操作,特别是人事主管部门在算员工考勤时,Excel提供了一系列日期时间函数来满足这些需求。
有许多人会觉得日期时间计算很难,也不确定,因为这里面涉及到公休、假期、跨日、跨月等等因素。然而,大部分情况都不必考虑得很难,尽量往简单的方向考虑解决方法,往往会达到很好的效果。
本文列举的示例就是这样。
示例数据如下图1所示。在单元格C3和C4中输入的是要计算的日期时段:开始日期和当前日期,单元格C7和C8中输入的是中间要剔除的一段日期,现在要计算将这段日期剔除后的总天数。
图1
似乎确实没有那么难!
在单元格B12中输入公式:
=DAYS(C4,C3)-DAYS(C8,C7)
或者使用隐藏的DATEDIF函数:
=DATEDIF(C3,C4,"D")-DATEDIF(C7,C8,"D")
或者,更直接一些:
=(C4-C3)-(C8-C7)
返回值应该是:3749天。
很简单吧!
接下来,让我们看看这些天数是多少年多少个月。这里,我们假设一年是365.25天,一年12个月。
可以使用数学运算并取整或者求余:
=INT(B16/365.25)&"年"&INT((MOD(B16,365.25)/365.25)*12)&"个月"
或者:
=TRUNC(B16/365.25) & "年" & TRUNC(MOD(B16,365.25)/(365.25/12)) & "个月"
或者:
=QUOTIENT(B16,365.25) & "年" & QUOTIENT(MOD(B16,365.25),365.25/12) & "个月"
还可以直接使用DATEDIF函数:
=DATEDIF(C3,C4,"Y") &"年" &DATEDIF(C3,C4,"YM")-DATEDIF(C7,C8,"YM") & "个月"
或者:
=DATEDIF(1,B16,"Y") &"年" &DATEDIF(1,B16,"YM") & "个月"
你有什么更好的公式吗?欢迎留言分享。
注:可以到知识星球完美Excel社群下载本文配套示例工作簿。
相关文档:
Excel函数学习45:DATEDIF函数
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。