Excel 常用函数-从身份证号码提取信息

弥雅
弥雅
弥雅
165
文章
485
评论
2020年7月20日16:22:14 7 273 2115字

Excel 常用函数-从身份证号码提取信息

在实际的工作中,当需要从身份证中提取出生年月,性别等信息时,我们可以直接利用 excel 函数直接实现。具体方法如下:

从身份证号码中提取出生年月日

=TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")+0
=TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")*1
=IF(A2<>"",TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00")+0,)
显示格式均为 yyyy-m-d。(最简单的公式,把单元格设置为日期格式)
=IF(LEN(A2)=15,"19"&MID(A2,7,2)&"-"&MID(A2,9,2)&"-"&MID(A2,11,2),MID(A2,7,4)&"-"&MID(A2,11,2)&"-"&MID(A2,13,2))  
显示格式为 yyyy-mm-dd。(如果要求为“1995/03/29”格式的话,将”-” 换成”/”即可)
=IF(D4="","",IF(LEN(D4)=15,TEXT(("19"&MID(D4,7,6)),"0000 年 00 月 00 日"),IF(LEN(D4)=18,TEXT(MID(D4,7,8),"0000 年 00 月 00 日"))))
显示格式为 yyyy 年 mm 月 dd 日。(如果将公式中“0000 年 00 月 00 日”改成“0000-00-00”,则显示格式为 yyyy-mm-dd)
=IF(LEN(A1:A2)=18,MID(A1:A2,7,8),"19"&MID(A1:A2,7,6))
显示格式为 yyyymmdd。
=TEXT((LEN(A1)=15)*19&MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")+0
=IF(LEN(A2)=18,MID(A2,7,4)&-MID(A2,11,2),19&MID(A2,7,2)&-MID(A2,9,2))
=MID(A1,7,4)&"年"&MID(A1,11,2)&"月"&MID(A1,13,2)&"日"
=IF(A1<>"",TEXT((LEN(A1)=15)*19&MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))

从身份证号码中提取出性别

=IF(MOD(MID(A1,15,3),2),"男","女")      (最简单公式)
=IF(MOD(RIGHT(LEFT(A1,17)),2),"男","女")
=IF(A2<>” ”,IF(MOD(RIGHT(LEFT(A2,17)),2),”男”,”女”),)
=IF(VALUE(LEN(ROUND(RIGHT(A1,1)/2,2)))=1,"男","女")

从身份证号码中进行年龄判断

=IF(A3<>””,DATEDIF(TEXT((LEN(A3)=15*19&MID(A3,7,6+(LEN(A3)=18*2),”#-00-00”),TODAY(),”Y”),)
=DATEDIF(A1,TODAY(),“Y”)
(以上公式会判断是否已过生日而自动增减一岁)
=YEAR(NOW())-MID(E2,IF(LEN(E2)=18,9,7),2)-1900
=YEAR(TODAY())-IF(LEN(A1)=15,"19"&MID(A1,7,2),MID(A1,7,4))
=YEAR(TODAY())-VALUE(MID(B1,7,4))&"岁"
=YEAR(TODAY())-IF(MID(B1,18,1)="",CONCATENATE("19",MID(B1,7,2)),MID(B1,7,4))

按身份证号号码计算至今天年龄

=DATEDIF(TEXT((LEN(A1)=15)*19&MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"),TODAY(),"y")

以 2006 年 10 月 31 日为基准日,按身份证计算年龄(周岁)的公式

=DATEDIF(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")*1,"2006-10-31","y")

按身份证号分男女年龄段

按身份证号分男女年龄段,身份证号在 K 列,年龄段在 J 列(身份证号为 18 位)

  • 男性 16 周岁以下为:1
  • 男性 16 周岁(含 16 周岁)以上至 50 周岁为:2
  • 男性 50 周岁(含 50 周岁)以上至 60 周岁为 :3
  • 男性 60 周岁(含 60 周岁)以上为:4
  • 女性 16 周岁以下为:1
  • 女性 16 周岁(含 16 周岁)以上至 45 周岁为 :2
  • 女性 45 周岁(含 45 周岁)以上至 55 周岁为 :3
  • 女性 55 周岁(含 55 周岁)以上为:4
=MATCH(DATEDIF(DATE(MID(K1,7,4),MID(K1,11,2),MID(K1,13,2)),TODAY(),"y"),{0,16,50,60}-{0,0,5,5}*ISEVEN(MID(K1,17,1)))
=SUM(--(DATEDIF(MID(K1,7,4)&"/"&MID(K1,11,2)&"/"&MID(K1,13,2),TODAY(),"y")>={0,16,45,55}+{0,0,5,5}*MOD(MID(K1,17,1),2)))
继续阅读
1
弥雅
  • 本文由 发表于 2020年7月20日16:22:14
  • 2
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:7   其中:访客  4   博主  3
    • ZAERA ZAERA 1

      Excel有需求就去百度学习,常用的那几个,IF,SUMIF,vlookup,xlookup,lookup,RANK,LEFT,MID,RIGHT,RAND函数

        • 弥雅 弥雅

          @ ZAERA 其实网上真的大把的,善用搜索

        • 张波博客 张波博客 5

          其实我们日常只使用了他1%的功能。。

            • 弥雅 弥雅

              @ 张波博客 EXCEL的话,的确是这样的,日常使用的话都没用到1%的功能!

            • Ourboke联盟 Ourboke联盟 3

              办公那么久都很少用office

              • Jane博客 Jane博客 1

                这几天大排查一直在用。