乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 如何用EXCEL计算两个日期之间相差的年数和月数-excel计算两个日期之间月数,excel计算日期时间差年月日

如何用EXCEL计算两个日期之间相差的年数和月数-excel计算两个日期之间月数,excel计算日期时间差年月日

作者:乔山办公网日期:

返回目录:excel表格制作


在C1输入=IF((YEAR(A1)=YEAR(B1))*(MONTH(A1)=MONTH(B1)),0,(YEAR(B1)-YEAR(A1))*12+MONTH(B1)+IF(DAY(B1)-15>0,1,0.5)-(MONTH(A1)+IF(DAY(A1)-15>0,1,0.5)))+0.5
为了让你好理解,将公式拆解为如下:=IF(X,0,Y)如果条件X成立,返回0,否则返回Y
其中X为(YEAR(A1)=YEAR(B1))*(MONTH(A1)=MONTH(B1))意思是如果A1的年份和B1的相同且A1的月份和B1的月份相同每个等式会返回TRUE(真)后者FALSE(假),真*真为真,其他情7a64e59b9ee7ad94335况为假。
Y为(YEAR(B1)-YEAR(A1))*12+MONTH(B1)+IF(DAY(B1)-15>0,1,0.5)-(MONTH(A1)+IF(DAY(A1)-15>0,1,0.5))+0.5简化为P-Q+0.5P为(YEAR(B1)-YEAR(A1))*12+MONTH(B1)+IF(DAY(B1)-15>0,1,0.5)Q为MONTH(A1)+IF(DAY(A1)-15>0,1,0.5)意思把A1、B1分别转化为两个小数,整数部分代表月,小数部分代表半个月。
Q好理解:A1的月份加上,如果A1的日比15大就是1,小于等于15为0.5。
P一样,只是考虑了年的影响:(YEAR(B1)-YEAR(A1))*12,即年份的差乘以12(1年12个月)
最后一个0.5是因为你要求连“皮”计算(比如1号到2号是几天,有人认为是1,有人认为是2-1+1共2天)。

一、这可以用DATEDIF函数来完成。

二、DATEDIF函数的定义
DATEDIF函数是Excel隐藏函数,在e79fa5e98193e78988e69d83330帮助和插入公式里面没有。 返回两个日期之间的年\月\日间隔数。常使用DATEDIF函数计算两日期之差。

语法
DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
注:结束日期必须大于起始日期
下面举个小例子:在日常工作中非常实用。
假如A1单元格写的也是一个日期,那么下面的三个公式可以计算出A1单元格的日期和今天的时间差,分别是年数差,月数差,天数差。
注意下面公式中的引号和逗号括号都是在英文状态下输入的。
=DATEDIF(A1,TODAY(),"Y") 计算年数差
=DATEDIF(A1,TODAY(),"M") 计算月数差
=DATEDIF(A1,TODAY(),"D") 计算天数差
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与end_date 日期中月数的差。忽略日期中的年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年。

三、实例说明

实例1:
题目: 计算出生日期为1973-4-1人的年龄
公式: =DATEDIF("1973-4-1",TODAY(),"Y")
结果: 33
简要说明 当单位代码为"Y"时,计算结果是两个日期间隔的年数.

实例2:
题目: 计算日期为1973-4-1和当前日期的间隔月份数.
公式: =DATEDIF("1973-4-1",TODAY(),"M")
结果: 403
简要说明 当单位代码为"M"时,计算结果是两个日期间隔的月份数.

实例3:
题目: 计算日期为1973-4-1和当前日期的间隔天数.
公式: =DATEDIF("1973-4-1",TODAY(),"D")
结果: 12273简要说明 当单位代码为"D"时,计算结果是两个日期间隔的天数.

实例4:
题目: 计算日期为1973-4-1和当前日期的不计年数的间隔天数.
公式: =DATEDIF("1973-4-1",TODAY(),"YD")
结果: 220
简要说明 当单位代码为"YD"时,计算结果是两个日期间隔的天数.忽略年数差

实例5:
题目: 计算日期为1973-4-1和当前日期的不计月份和年份的间隔天数.
公式: =DATEDIF("1973-4-1",TODAY(),"MD")
结果: 6
简要说明 当单位代码为"MD"时,计算结果是两个日期间隔的天数.忽略年数和月份之差

实例6:
题目: 计算日期为1973-4-1和当前日期的不计年份的间隔月份数.
公式: =DATEDIF("1973-4-1",TODAY(),"YM")
结果: 7
简要说明 当单位代码为"YM"时,计算结果是两个日期间隔的月份数.不计相差年数注意:TODAY()函数获取的是系统当前日期,所有列举的实例为2006-11-7日的计算结果,并不一定和你得到的结果相符。
四、假设开始日期写在A1单元格,结束日期写在B1单元格,要在C1单元格得出两个日期相差的年数和月数,则公式可以写成如下
=DATEDIF(A1,B1,"y")&"年"&DATEDIF(A1,B1,"ym")&"个月"
=TEXT(SUM(DATEDIF(DATE(XXXX,XX,XX),DATE(XXXX,XX,XX),{"y","ym","md"})*10^{4,2,0}),"0年00月00天")

第一个XXXX,XX,XX的地方填开始的时间,比如2015,1,1
第二个XXXX,XX,XX的地方填结束的时间,比如2015,3,4
如果是某个时间到今天的天数,可以直接写=TEXT(SUM(DATEDIF(DATE(XXXX,XX,XX),TODAY(),{"y","ym","md"})*10^{4,2,0}),"0年00月00天")

您好:e799bee5baa6e58685e5aeb9365
你的这个问题我也遇到过,所以,我在网络上找了一个答案,以供你参考,内容如下:

======================================================================
有这个函数的

1、简要说明: 返回两个日期之间的年\月\日间隔数

2、基本语法: =DATEDIF(开始日期,结束日期,单位代码)

3、实例1:
题目: 计算出生日期为1973-4-1人的年龄

公式: =DATEDIF("1973-4-1",TODAY(),"Y")

结果: 33

简要说明 当单位代码为"Y"时,计算结果是两个日期间隔的年数.

4、实例2:
题目: 计算日期为1973-4-1和当前日期的间隔月份数.

公式: =DATEDIF("1973-4-1",TODAY(),"M")

结果: 403

简要说明 当单位代码为"M"时,计算结果是两个日期间隔的月份数.

5、实例3:
题目: 计算日期为1973-4-1和当前日期的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"D")

结果: 12273

简要说明 当单位代码为"D"时,计算结果是两个日期间隔的天数.

5、实例4:
题目: 计算日期为1973-4-1和当前日期的不计年数的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"YD")

结果: 220

简要说明 当单位代码为"YD"时,计算结果是两个日期间隔的天数.忽略年数差

5、实例5:
题目: 计算日期为1973-4-1和当前日期的不计月份和年份的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"MD")

结果: 6

简要说明 当单位代码为"MD"时,计算结果是两个日期间隔的天数.忽略年数和月份之差

5、实例6:
题目: 计算日期为1973-4-1和当前日期的不计年份的间隔月份数.

公式: =DATEDIF("1973-4-1",TODAY(),"YM")

结果: 7

简要说明 当单位代码为"YM"时,计算结果是两个日期间隔的月份数.不计相差年数
==================================================

原文网址:http://z.baidu.com/question/14950082.html?si=1

祝楼主能达到自己所到达到的目的!

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网