如何从身份证中自动提取出生年月与性别

身份证是每一位公民的唯一标识,我们从身份证中可以知道出生年月与性别等信息。在学校,每学年都需要输入学生的信息并报送教育局,其中包括输入学生的身份证、出生年月、性别、年龄等内容,其中身份证需要一个一个地输入,而其他的内容可以使用公式从身份证中获取,本文介绍从身份证中提取出生年月、性别、年龄等。

身份证号码以前的是15位数字,现在的则是18位数字。15位数字的第7、8位是年份,第9、10位是月份,第11、12位是日期,15位奇数是男,偶数是女;18位的第7、8、9、10位是年份,第11、12位是月份,第13、14位是日期,第17位奇数是男,偶数是女。

知道了这些内容,就可以使用公式从身份证中提取相关信息了。将填写身份证那一列单元格设置成文本,再输入每位学生的身份证。未应用公式前的表格如下:

如何从身份证里自动提取出生年月(如何从身份证中自动提取出生年月与性别)(1)

一、从身份证中获取出生年月。

在D3中输入“=if(len(b3)=15,”19”&mid(b3,7,2)&”年”&mid(b3,9,2)&”月”&mid(b3,11,2)&”日”,if(len(b3)=18,

mid(b3,7,4)&”年”&mid(b3,11,2)&”月”&mid(b3,13,2)&”日”,”身份证错误”))”,不含中文双引号,按回车即可提取出生年月,然后使用填充手柄即可自动获取出生年月,可以判断身份证是15位还是18位,除这两个外都是错误的身份证号。如下图:

如何从身份证里自动提取出生年月(如何从身份证中自动提取出生年月与性别)(2)

其中公式的含义如下:

LEN(B3)=15,判断B3中的字符数是否为15,即判断身份证是15位还是18位;

MID(B3,7,2),从B3单元格的第7位提取两位字符,即从身份证中第7位开始提取两位作为年份,月份与日相似。

IF(表达式,A,B):表达式是真的时返回A,否则返回B,可嵌套多个IF公式。

二、从身份证中获取性别

在C3中输入“=IF(LEN(B3)=15,IF(MOD(MID(B3,15,1),2)=1,"男","女"),IF(LEN(B3)=18,IF(MOD(MID(B3,17,1),2)=1,"男","女"),"身份证错误"))”,不含中文双引号,按回车键即可获取性别,再利用填充手柄自动获取其他人的性别。如下图:

如何从身份证里自动提取出生年月(如何从身份证中自动提取出生年月与性别)(3)

其中公式含义如下:

LEN(B3)=15,判断B3中的字符数是否为15;

MOD(MID(B3,15,1),2):获取B3中第15位数,并除以2,所得的余数。可以放在IF公式中当表达式,用来判断所得的余数是否等于1,如果等于1则为“男”,否则为“女”。

三、根据出生年月算出年龄

根据上面从身份证中提取的出生年月可以算年龄。把出生年月一列改为“0000-00-00”的格式。在E3中输入“INT((TODAY()-D3)/365)”,不含中文双引号,按回车键即可算出年龄,再利用填充手柄自动获取其他人的年龄。如下图:

如何从身份证里自动提取出生年月(如何从身份证中自动提取出生年月与性别)(4)

其中公式的含义:

TODAY():返回当前系统的日期;

INT(a):将数值向下取整为最接近的整数。

本文介绍了从身份证中提取出生年月和性别,并根据出生年月算出年龄,在运算用了多个函数。注:本文参考了网络上相关的文章。

,