在Excel中计算日期差需使用隐藏的DATEDIF函数,其语法为=DATEDIF(开始日期, 结束日期, 返回类型)。该函数可返回两个日期间的年、月、日等不同单位的差值,常用于工龄、年龄等计算,下表为具体应用示例。

公式从左至右依次为
计算A2与B2日期差的整年数并显示为x年。
计算A2与B2日期间月数,结果后加个月
计算A2与B2日期差值,返回天数并显示天字。
计算A2与B2日期间整月数,返回结果加个月单位。
计算A2与B2日期相差的天数,返回结果加天字。
计算A2与B2日期之差的天数,忽略年份,结果后加天数二字。
第三参数的详细说明如下:
Y:某段时间内的完整年数。
M为某段时间内的完整月份数。
D表示某段时间内的天数。
计算MD起止日期间天数差,忽略年份与月份,仅比较日部分。
计算YM起止日期间相差的月份数,忽略具体日期与年份差异。
YD表示起始日期与结束日期之间的日期部分差值。
忽略日期中的年份。
如下:
在单元格中输入公式:=DATEDIF(起始日期, 结束日期, m),其中m代表计算两日期之间的月数差。
通过DATEDIF函数可准确计算两日期间的月数间隔。
start_date:必填项,表示指定期间的起始日期。可输入带引号的文本、序列号,或由其他公式、函数返回的日期值。
end_date:必填项,表示时间段结束的日期。
单位:指定返回信息的类型,M表示时间段内的整月数。

计算两日期间隔月数的其他方式
整月数计算方法
将两个日期相减得到天数,再除以每月平均天数(如30),然后向下取整,公式为:INT((结束日期-开始日期)/30),其中INT表示向下取整。但由于各月实际天数不同,无论用30或31均无法准确反映真实月数,因此通过先算天数再换算月数的方式并不精确,不宜采用。
计算整月数的方法
利用DAYS函数计算结束日期与开始日期之间的天数,再转换为月数,步骤同方法一。
若为日期格式,可直接相减。例如数据在A1和A2单元格,使用公式=TEXT(A1-A2,M)即可得出月份差。
可用DATEDIF函数计算月数差。
若为日期格式,可使用月份函数相减,如:=MonTH()-MonTH(),其中MonTH()函数用于获取当前日期的月份。
重点介绍DATEDIF函数,它是Excel中的隐藏函数,常用于计算两个日期之间的差值,但不会出现在帮助文档或插入公式功能中。
计算两日期间相隔的年月日数。
DATEDIF函数语法说明
1.
2.
表示时间段中首个或开始的具体日期。
3.
End_date
表示某一时间段内最晚或最终的日期。
4.
Unit
指定返回信息的数据类型。
5.
Unit
返回
6.
结束日期需晚于起始日期
举个日常工作中实用的小例子。
若A1单元格中输入的是日期,则以下三个公式可分别计算A1日期与当前日期之间的年数差、月数差和天数差。请注意,公式中的引号、逗号及括号均需在英文输入状态下输入。
用DATEDIF函数计算A1日期与今天之间的年份差。
计算A1单元格日期与今日相差的月份数。
用DATEDIF函数计算A1与今日之间的天数差。
"Y"
时间段中的整年数。
"M"
时间段中的整月数。
"D"
时间段中的天数。
"MD"
与
end_date
仅计算日期中天数的差异,忽略年月。
"YM"
与end_date
忽略月份,仅计算日期中的月数差。
"YD"
与
end_date
忽略年份,仅计算日期中天数的差异。


