在日常的人事管理中,各种到期提醒(如生日提醒、转正提醒、合同到期提醒、退休提醒)及工龄计算是经常会用到的,这些场景其实只要使用一个DATEDIF函数,就全部轻松搞定。它们的本质就是需要计算两段时间之间间隔的天数或者月数。各个场景使用示例如下:
有了离转正天数这个值就可以通过筛选、函数提醒、条件格式等方式提取你想要的人员名单。
不同的公司对工龄的计算规则不一样,有些是以年为单位。这样只要在外面再加一个INT函数,即=INT(DATEDIF(B5,TODAY(),"m")/12)。这样张三的工龄就是0年,李四的工龄就是1年。有些公司以半年为单位。这样只要在外面加一个FLOOR函数,即=FLOOR(DATEDIF(B5,TODAY(),"m")/12)。这样张三的工龄就是0.5年,李四的工龄就是1.5年。
这里DATEDIF是大隐于市真人不露相的“高人”,是因为在Excel的函数列表中没有,帮助中也查不到。但就如前面展示的,它可以轻松搞定这么多的问题。
DATEDIF函数用于计算两个日期间相差的年、月、日数。它一共有三个参数,分别是起始日期、终止日期、计算方式。计算方式一共六种,具体说明如下:
这六种计算方式示例如下:
前面三个参数比较好理解,后面三个复合参数理解起来会稍微复杂点。我们以上面生日提醒案例中"yd"参数为例进行说明。它指一年中相差的天数。案例中起始日期参数是1988-11-30,终止日期参数是2014-11-22。忽略年份的情况下,11月30日比11月22日大,这时函数计算的是从11月30日到下一年的11月22日有多少天。所以,这也是为何在案例中我们是把这个结果和365天相减,才得到我们想要的这两个日期相差几天。