【Excel公式教程】根据身份证号推算退休日期的公式解读

90本电子书:Excel、Word、PPT、职场必备,总有一本是你需要的……

公众号回复【打卡】了解活动规则

已经好几次看到群里有人问这个问题:根据身份证号怎么计算退休日期?

也一直在纠结要不要就这个问题写一篇教程,纠结的原因在于退休日期的计算并不是简简单单的一刀切问题,随着相关政策的调整,退休的时间标准需要对相关政策有深度的解析,并且根据各企业特点和工种岗位还有更加特殊的规定,这就不是一个简简单单的Excel公式问题了。

但是假如按照传统观念或者比较大众的理解来说,退休的规则就是女性50,男性60,这个问题就很好解决了,所以以下只针对这种约定俗成的规则进行介绍。

我们都知道,在身份证号码中可以获得很多个人信息,详见:

Excel表格里的身份证号码都能获得哪些信息,今天一次告诉你!

在计算退休日期这个问题中,相关的就是出生日期和性别这两个信息,使用的公式是:

=EDATE(--TEXT(MID(A2,7,8),"0-00-00"),IF(TEXT(-1^MID(A2,9,9),"女;男")="男",60,50)*12)

← 左右滑动查看完整公式 →

下面对这个公式做分析。

公式中最重要的是EDATE函数,这个函数的功能是得到一个指定日期在指定月份之后的一个日期。

EDATE(开始日期,月数)

关于这个函数的一些用法详见:

【Excel函数教程】3个例子让你彻底玩转EDATE函数

在今天的问题中,开始日期就是出生日期,需要从身份证号码中提取。月数是年*12,年相当于退休年龄,男性60,女性50,这就需要从身份证号码中提取出性别,再做判断后得到EDATE的第二参数。

从身份证号码提取出生日期的公式是:--TEXT(MID(A2,7,8),"0-00-00")

从身份证号码提取性别的公式是:TEXT(-1^MID(A2,9,9)

关于这两个公式不在本文详细讨论了,前面的链接里有相关的介绍。

公式中的IF(TEXT(-1^MID(A2,9,9),"女;男")="男",60,50)*12就是计算月数的,可以这样理解:IF(性别="男",60,50)*12。

实际上这个问题的麻烦之处在于出生日期和性别都要从身份证号码提取,再去计算出生日期,如果使用两个辅助列分别把出生日期和性别先提取出来后,就是一个单纯的EDATE函数应用,这在之前也有教程介绍的很详细了。

【Excel函数教程】EDATE函数怎样计算出退休日期时间

最后还要补充一点,有的群友还提问说怎样做个退休日期的倒计时提醒,也就是在身份证的后面备注还有多久退休,其实这个问题的前提还是要先把退休日期算出来,然后再用到期提醒的方法去做就行了,相关教程可以参阅:

Excel到期自动提醒怎么做?方法简单的你都想不到……

最后来总结一下,计算退休日期的问题本来不难,要做到期提醒也不难,难的是其实数据是身份证号码,这就增加了很多中间环节,例如生日和性别的提取。

带来的启示就是,不要追求一步到位,这样反而麻烦,在遇到麻烦问题的时候能把过程一步步拆解才是正途。

还有一点就是,一些看起来很有难度的公式,其实都是基础知识的叠加,比如按身份证号码计算退休日期的公式,里面就是基础的IF函数,TEXT函数的两个常用套路,再就是EDATE函数的常规用法了,在此提醒各位想提高函数应用能力的朋友,基础一定要扎实。

参加打卡活动就机会免费获赠

(0)

相关推荐