加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

【转载】Excel中利用函数自动计算区间日期

(2014-04-08 12:22:31)
标签:

excel

datedif

it

分类: 转载网络资料

2014-04-08 excelsky EXCEL培训

 

DATEDIF用来计算两个日期之间的天数,月数或年数,如可以计算某个员工入职公司多少年多少月多少天。DATEDIF是一个隐藏函数,在EXCEL帮助文件中找不到,但百度上有,百度百科介绍没有图文并茂的形式。我在这里做一个补充。

先看该函数的语法=DATEDIF(start_date,end_date,unit),翻译成中文就是=DATEDIF(起始日期,终止日期,单位)。

Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
注:结束日期必须大于起始日期

其中UNIT有六个可选的代码,分别为"Y","M","D","MD","YM","YD"

=DATEDIF(A1,TODAY(),"Y")计算年数差
=DATEDIF(A1,TODAY(),"M")计算月数差
=DATEDIF(A1,TODAY(),"D")计算天数差
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与end_date 日期中月数的差。忽略日期中的日和年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年。 
下面结合一个实际的例子来分别解释。如果某个员工是2012-3-28入职,今天的日期为2014-3-23,问该员工在公司工作了多少年? 

如果用公式=YEAR(B2)-YEAR(B1),答案返回2,两年,其实是两年不到。还差几天,所以不能用这个公式。

在C2中输入公式=DATEDIF(A2,B2,"y")返回1,代码中"y"指时间段中的整年数。也就是该员工在公司工作了1年。

 

在D2中输入公式=DATEDIF(A2,B2,"ym")返回11,代码"ym"指的是相差的月数,忽略日期中的日和年。由于该公式忽略了年,需和上一个公式结合使用,也就是该员工在公司工作了1年11个月。

 

在E2中输入公式=DATEDIF(A2,B2,"md") ,代码"md"指的是相差的天数的差,忽略日期中的月和年.

 

将上述三个公式联系起来,可以理解成该员工在公司呆了1年11个月再23天。

 另外三个参数解释如下:

=DATEDIF(A2,B2,"M"),返回整月数,这里返回23,上述公式结果1年11个月即23个月。

 

=DATEDIF(A2,B2,"d"),返回725,整天数。即一共相差725天。

 

=DATEDIF(A2,B2,"yd"),返回360,忽略日期中的年,因为年被忽略了,如果加上年,则可以理解成1年再加上360天。

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有