在excel中,从身份证中提取出生年月日、性别、年龄

2024-11-26 11:00:22
推荐回答(5个)
回答1:

这个公式是18位身份证的

年龄:就是从身份证号中提取出出生年份,用当前的年份去减
性别:判断倒数第2位是奇数还是偶数
年月日:从身份证中提取出相应的年月日(这个公式同时适用15位和18位)

如果重写这些公式

年龄:
=IF(LEN(A1)=18,DATEDIF(DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),NOW(),"y"),DATEDIF(DATE("19"&MID(A1,7,2),MID(A1,9,2),MID(A1,11,2)),NOW(),"y"))

性别:
=IF(LEN(A1)=18,IF(MOD(VALUE(MID(A1,17,1)),2)=1,"男","女"),IF(MOD(VALUE(MID(A1,15,1)),2)=1,"男","女"))

年月日:
=IF(LEN(A1)=18,DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),DATE("19"&MID(A1,7,2),MID(A1,9,2),MID(A1,11,2)))

回答2:

在Excel中根据身份证号码自动生成性别、出生日期和年龄
【身份证号判断性别的方法】 18位的看倒数第二位,奇男偶女; 15位的看倒数第一位,奇男偶女。
在Excel中根据身份证号码自动生成出生生日期和性别 下文说明以本图例为例,即“性别在B列,年龄在C列,出生日期在D列,身份证号码在E列” 新建的Excel表是常规格式,但身份证列应设置为文本格式
根据身份证号码自动生成性别:
方法一: 在E列输入身份证号,在B列填写性别,可以在B2单元格中输入公式 “=IF(MOD(IF(LEN(E2)=15,MID(E2,15,1),MID(E2,17,1)),2)=1,"男","女")”,其中: LEN(E2)=15:检查身份证号码的长度是否是15位。 MID(E2,15,1):如果身份证号码的长度是15位,那么提取第15位的数字。 MID(E2,17,1):如果身份证号码的长度不是15位,即18位身份证号码,那么应该提取第17位的数字。 MOD(IF(LEN(E2)=15,MID(E2,15,1),MID(E2,17,1)),2):用于得到给出数字除以指定数字后的余数,本例表示对提出来的数值除以2以后所得到的余数。 IF(MOD(IF(LEN(E2)=15,MID(E2,15,1),MID(E2,17,1)),2)=1,"男","女"):如果除以2以后的余数是1,那么 Excel学习教程Excel介绍Excel教程Excel表格Excel函数Excel图表B2单元格显示为“男”,否则显示为“女”。 15位身份证,看最后一位,奇男偶女;18位的,看第17位数,也是奇男偶女。
方法二: 如果你是想在Excel表格中,从输入的身份证号码内让系统自动提取性别,可以输入以下公式: =IF(LEN(E2)=15,IF(MOD(MID(E2,15,1),2)=1,"男","女"),IF(MOD(MID(E2,17,1),2)=1,"男","女")) 公式内的“E2”代表的是输入身份证号码的单元格。
根据身份证号码自动生成出生日期
格式一: 18位身份证号:410881197906055521 输出出生日期1979/06/05 =CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2,13,2)) 15位身份证号:410881790605552 输出出生日期1979/06/05 =CONCATENATE("19",MID(E6,7,2),"/",MID(E6,9,2),"/",MID(E6,11,2)) 公式解释: a. MID(E6,7,2)为在身份证号码中获取表示年份的数字的字符串 b. MID(E6,9,2) 为在身份证号码中获取表示月份的数字的字符串 c. MID(E6,11,2) 为在身份证号码中获取表示日期的数字的字符串 d. CONCATENATE("19",MID(E6,7,2),"/",MID(E6,9,2),"/",MID(E6,11,2))目的就是将多个字符串合并在一起显示。
格式二: 15位身份证号:410881790605552 出生日期790605 =IF(LEN(E6)=15,MID(E6,7,6),MID(E6,9,6)) 18位身份证号:410881197906055521 出生日期790605 =IF(LEN(E2)=15,MID(E2,7,6),MID(E2,9,6)) 公式解释: LEN(E6)=15:检查E6单元格中字符串的字符数目,本例的含义是检查身份证号码的长度是否是15位。 MID(E6,7,6):从E2单元格中字符串的第7位开始提取6位数字,本例中表示提取15位身份证号码的第7、8、9、10、11、12位数字。 MID(E6,9,6):从C2单元格中字符串的第9位开始提取6位数字,本例中表示提取18位身份证号码的第9、10、11、12、13、14位数字。 =IF(LEN(E2)=15,MID(E2,7,6),MID(E2,9,6)):IF是一个逻辑判断函数,表示如果额E2单元格是15位,则提取第7位开始的6位数字,如果不是15位则提取自第9位开始的6位数字。
根据出生日期计算年龄
D行为出生日期列,双击年龄所在列的第二行,然后输入下面公式,然后按ENTER键;再利用下拉方式将公式复制到该列的其他行中即可 =YEAR(NOW())-YEAR(D3)

回答3:

在excel表格中,根据身份证号码就可以自动提取出生年月、性别、年龄。

  第一,身份证号码的组成。
  当今的身份证号码由18位数字组成:前6位为地址码,第7至14位为出生日期码,第15至17位为顺序码,第18位为校验码。
  15~17位为顺序号,其中第17位如果是单数为男性分配码,双数为女性分配码。即通过第17位数字,可以判断性别,奇数为男,偶数为女。
  下面以实例的方式讲解如何根据身份证号码自动提取出生年月、性别、年龄。首先,在excel中输入以下表格,实例如下面所示。
  A B        C     D E
 姓名 身份证号码        出生日期      性别   年龄
 张三 510321197205030786   1972年05月03日    女    37
  第二,根据身份证号码自动提取出生年月
  在目标单元格输入公式:=MID(B2,7,4)&"年"&MID(B2,11,2)&"月"&MID(B2,13,2)&"日",回车确定,单元格内会出现与身份证号码相关的出生日期。其它单元格的填充,不必一一输入公式,只需选中该单元格复制,在其它单元格内粘贴即可。
  提示:MID函数是提供的一个“从字符串中提取部分字符”的函数命令。
  第三,根据身份证号码自动提取性别的方法
  在目标单元格输入公式:=IF(MOD(RIGHT(LEFT(B2,17)),2),"男","女")
  提示:IF函数:根据逻辑表达式测试的结果,返回相应的值。IF函数允许嵌套。
  RIGHT函数:根据所指定的字符数返回文本串中最后一个或多个字符。
  第四,根据身份证号码自动提取年龄的方法
  在目标单元格输入公式:=DATEDIF(TEXT(MID(B2,7,6+2*(LEN(B2)=18)),"#-00-00"),NOW(),"y"),回车确定。

回答4:

1 MID是提取个数,MID(A1,7,4)是指从身份证中从左边数,从第七位起,提四个数,则就是出生年,后面的等同.当年月日提出后,对于DATEDIF(DATE(开始日期),NOW(现在日期)计算他们的年差
2 也是从身份证中最好一位(指17位的),你说15位的身份证要把这里的17改为15.意思是说,最好一位若是单数,则为男,双数则为女
3 等同一二问题一样由于你给的分数太少了,打字也要速度与时间,分给多一点,还可以一步一步祥解.

回答5:

那个只适合18位。
15位的应该是:
年龄
=DATEDIF(DATE(MID(A1,7,2),MID(A1,9,2),MID(A1,11,2)),NOW(),"y")

性别
=IF(MOD(VALUE(RIGHT(A1,1)),2)=1,"男","女")

年月日
=IF(LEN(A1)=18,MID(A1,7,8),"19"&(MID(A1,7,6)))(这个公式是通用的18位15位都可以)