分享

计算年龄、性别和退休

 lexongqwe001 2018-11-30

1、查找重复身份证号

=IF(COUNTIF(A:A,A2&"*")>1,"重复","")

COUNTIF函数在计算文本型数字时,会默认按数值型进行处理,但是Excel中的数字精度只有15位,并且身份证号码是18位,因此会把前15位相同的身份证全部识别为相同的内容。

在第二参数后加上一个星号 &"*",就是告诉Excel,要查找包含A2单元格内容的文本,通过这样变通的手段,COUTNIF函数就听话啦。

2、计算出生年月

=--TEXT(MID(A2,7,8),"0-00-00")

身份证号码中的第8位到15位是出生年月信息。

首先使用MID函数从A2单元格的第7位开始,提取出8个字符,得到类似 19840727的结果。 

再使用TEXT函数将这个字符串变成日期样式的文本,得到类似1984/07/27的结果。

由于TEXT函数的结果是文本型的内容,所以加上两个小减号 -- 就是计算负数的负数,通过四则运算,变成真正的日期序列。

如果计算后显示为5位数字,别忘了将单元格格式设置为日期。

3、提取性别

=IF(MOD(MID(A2,15,3),2),"男","女")

身份证号码中的第17位是性别信息,单数表示男,双数表示女。

首先使用MID函数从A2单元格的第15位开始,提取出3个字符。再使用MOD函数计算这个字符与2相除的余数。

最后使用IF函数判断,如果余数大于0,返回男,如果余数是0,则返回女。 

4、计算退休日期

=EDATE(TEXT(MID(A2,7,8),"0-00-00"),MOD(MID(A2,15,3),2)*120+600)

先用TEXT(MID(A2,7,8),"0-00-00"),计算出出生年月信息。

再使用MOD(MID(A2,15,3),2)计算性别码和2相除的余数,结果是1或是0。

如果性别码和2相除的余数是1,MOD(MID(A2,15,3),2)*120+600部分就相当于1*120+600,结果是720。

否则就是0*120+600,结果是600。

EDATE函数返回一个日期经过指定月份后的日期,也就是以出生年月为准,男性要经过720个月(60年),女性要经过600个月(50年)就是退休年龄了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多