HR必学的日期处理函数-DATEDIF

DATEDIF函数作为常用的日期处理函数,在处理日期方面非常方便,同时也是Excel中少有的几个隐藏函数!
直接先送上DATEDIF帮助说明:
在Excel是隐藏函数,输入对应的函数没有参数提示及说明
但是在WPS中是可以:
先讲讲基础用法,在通过几个实际应用案例,加深理解!
6种比较单位,先易后难,一个一个来看看:
01 简单 | 间隔的年、月、日
先来看前三个,对应的公式如下:
相差年数(Y):=DATEDIF(A2,B2,"Y")
相差月数(M):=DATEDIF(A2,B2,"M")
相差天数(D):=DATEDIF(A2,B2,"d")
太简单了以至于我都不想多说什么!但是还是要说几点:
1、如果开始日期大于了结束日期,就会报错,而不会负数显示
2、如果没有这个函数,我们计算相差年份,可能就需要
=YEAR(B2)-YEAR(A2)-1+(DATE(YEAR(B2),MONTH(A2),DAY(A2))<=B2)
年份的计算是不满一年就忽略掉,比如两个日期相差23个月20天也就是1年
就算相差一天,也不行,对于一些特殊计算,可能就不太适合了!
2、相差月份的算法如下:
=(YEAR(B2)-YEAR(A2))*12+MONTH(B2)-MONTH(A2)-(B2-A2<
(TEXT(B2,"yyyy-m-\1")-TEXT(A2,"yyyy-m-\1")))*1
3、相差天数,一般比较少用,因为逻辑就是
=B2-A2
日期是特殊的数值可以直接相减!
02 |  YD、MD、YM
平年和闰年会自动处理,比较友好!参数记忆问题,好吧!我也没有太好的办法,实在记不得上面的图片保存一下,备查!
基础我们就说这么多,下面来看两个实际案例!
案例1
人事必备技能-生日提醒
=TEXT(20-DATEDIF(B2-20,TODAY(),"yd"),"0天后生日;;今天生日;")
生日我们需要忽略年份,然后计算差额,相差多少天,这正好可以使用我们yd参数处理!
以上案例我们有专门的文章讲解,这里就不多啰嗦了!
扩展学习万能提醒功能制作!
案例2
工龄计算
=TEXT(SUM(DATEDIF(B2,TODAY(),{"y","ym","md"})*10^{4,2,0}),"0年00月00天")
精确到年月日,大家如果对上面数组公式比较陌生可以使用下面公式代码,效果一样:
=DATEDIF(B2,TODAY(),"Y")&"年"&DATEDIF(B2,TODAY(),"ym")&"月" &DATEDIF(B2,TODAY(),"md")&"日"
大部分函数参数都支持常量数组化,一定程度上可以起到简化公式的作用!
可读性,取决于阅读者的数组基础了,略有难度!
据说Datedif函数天生自带BUG,目前无感,有兴趣的同学自行百度了解!
(0)

相关推荐