java人员的工龄_计算员工工龄,这个问题千万要注意

原标题:计算员工工龄,这个问题千万要注意

9de90fe69c6c1dca92167b4dd6614660.png

DATEDIF函数用于计算两个日期之间的天数、月数或年数。虽然是隐藏函数,但是名气却不小。在计算员工工龄、计算入职时间、计算人员年龄等等方面有着非常广泛的应用。

函数语法是:

DATEDIF(开始日期,结束日期,返回的间隔类型)

比如说,要计算工龄有几个月,公式是这样的:

=DATEDIF("2012-12-1","2019-4-1","m")

就是计算12年12月日至2019年4月1日有多少个完整的月份。

要计算年龄有多少岁,公式是这样的:

=DATEDIF("1988-6-1","2019-4-1","y")

就是计算1988年6月1日出生的员工到2019年4月1日有多少个整年数。

DATEDIF虽然功能强大,而且简单易用,但是有时候也会有点小脾气,今天就和大家分享一下这个函数在使用中遇到的问题:

976bdf85b6940d13c1f831bc4883646c.png

我们要计算员工入职到离职期间一共工作了多少个月,但是红线框出的两条计算结果,明显和预期不一致了。

我们的副班小污同志辛辛苦苦工作了一个月,但却啥都不算,不带这么玩的,这是严重的拖欠农民工的工资啊。

咱们仔细观察,会发现只有当DATEDIF的结束日期是当月的最后一天,而开始日期的天数比结束日期的天数大的时候,计算结果会少一个月。

既然找到了问题,解决就方便了,把原来的公式修订一下:

=DATEDIF(C2,D2,"m")+AND(DAY(C2)>DAY(D2),D2=EOMONTH(D2,0))

我们来看一下这个公式,其实就是多了一个简单的判断,用AND函数链接两个条件:

DAY(C2)>DAY(D2),是判断开始日期的天数是否大于结束日期的天数

D2=EOMONTH(D2,0),是判断结束日期是否当月的最后一天

当开始日期的天数大于结束日期的天数,并且结束日期是否当月的最后一天时,就在DATEDIF公式结果上加1个月,否则就保持DATEDIF的结果。

好了,我们的问题解决了,当然可以把这个公式运用到实际工作中,但是我要说的是关键不是只学会公式,而是要学会碰到问题怎么去寻找错误原因,再分析解决的方法,有了思路,写公式就是水到渠成的了。

作者:光

ExcelHome学院助教返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值