excel中用身份证号码生成性别

  • 格式:doc
  • 大小:37.00 KB
  • 文档页数:6

下载文档原格式

  / 6
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

excel中用身份证号码生成性别、出生日期、计算年龄

(2010-06-23 22:28:15)

转载

标签:

杂谈

excel中用身份证号码生成性别、出生日期、计算年龄

从身份证号码中自动生成性别和生日

生成性别:(其中B2是身份证号码所在列)

一性别双击性别所在列的第二行,然后输入下面公式,然后按ENTER键;再利用下拉方式将公式复制到该列的其他行中即可

1=CHOOSE(MOD(IF(LEN(B2)=18,MID(B2,17,1),IF(LEN(B2)=15,RIGHT(B2,1),"")),2)+1,"女","男")

2=IF(MOD(IF(LEN(B2)=15,MID(B2,15,1),MID(B2,17,1)),2)=1,"男","女")

3=IF(LEN(B2)=15,IF(MOD(MID(B2,15,1),2)=1,"男","女"),IF(MOD(MID(B2,17,1),2)=1,"男","女"))

二出生日期提取出生日期:(其中B2是身份证号码所在列)

双击出生日期所在列的第二行,然后输入下面公式,然后按ENTER键;再利用下拉方式将公式复制到该列的其他行中即可

=DATE(MID(B2,7,4),MID(B2,11,2),MID(B2,13,2))

三计算年龄:(其中C3是出生日期所在列)

双击年龄所在列的第二行,然后输入下面公式,然后按ENTER键;再利用下拉方式将公式复制到该列的其他行中即可

=YEAR(NOW())-YEAR(C3)

Excel自动从身份证中提取生日性别

出处:天空软件作者:佚名日期:2009-09-16

每年新入学的一年级学生,都需要向上级教育部门上报一份包含身份证号、出生年月等内容的电子表格,以备建立全省统一的电子学籍档案。数百个新生,就得输入数百行相应数据,这可不是个轻松活儿。有没有什么办法能减轻一下输入工作量、提高一下效率呢?其实,我们只需在Excel2003中将学生的身份证号完整地输入后,它就可以帮我们自动填好出生日期和性别。

现在学生的身份证号已经全部都是18位的新一代身份证了,里面的数字都是有规律的。前6位数字是户籍所在地的代码,7-14位就是出生日期。第17位“2”代表的是性别,偶数为女性,奇数为男性。我们要做的就是把其中的部分数字想法“提取出来”。

STEp1,转换身份证号码格式

我们先将学生的身份证号完整地输入到Excel2003表格中,这时默认为“数字”格式(单元格内显示的是科学记数法的格式),需要更改一下数字格式。选中该列中的所有身份证号后,右击鼠标,选择“设置单元格格式”。在弹出对话框中“数字”标签内的“分类”设为“文本”,然后点击确定。

STEP2,“提取出”出生日期

将光标指针放到“出生日期”列的单元格内,这里以C2单元格为例。然后输入

“=MID(B2,7,4)&"年"&MID(B2,11,2)&"月"&MID(B2,13,2)&"日"”(注意:外侧的双引号不用输入,函数式中的引号和逗号等符号应在英文状态下输入)。回车后,你会发现在C2单元格内已经出现了该学生的出生日期。然后,选中该单元格后拖动填充柄,其它单元格内就会出现相应的出生日期。如图1 。

图1 通过上述方法,系统自动获取了出生年月日信息

小提示:MID函数是EXCEL提供的一个“从字符串中提取部分字符”的函数命令,具体使用格式在EXCEL中输入MID后会出现提示。

STEP3,判断性别“男女”

选中“性别”列的单元格,如D2。输入“=IF(MID(B2,17,1)/2=TRUNC(MID(B2,17,1)/2),"女","男")”(注意如上)后回车,该生“是男还是女”已经乖乖地判断出来了。拖动填充柄让其他学生的性别也自动输入。如图2。

图2 性别被自动填入指定位置

这样,通过两个简单的函数,我们就可以让EXCEL从身份证号中自动提取出生日期和性别并填充到单元格内,极大地减轻了我们的输入工作量。最后效果如图3。

图3 用EXECL可以自动识别并填入学生信息

根据身份证号码让Excel自动输入出生日期和性别

方法一:

15位身份证号:410881********* 输出出生日期1979/06/05

=CONCATENATE("19",MID(E2,7,2),"/",MID(E2,9,2),"/",MID(E2,11,2))

公式解释:

a.MID(E2,7,2)为在身份证号码中获取表示年份的数字的字符串

b. MID(E2,9,2) 为在身份证号码中获取表示月份的数字的字符串

c. MID(E2,11,2) 为在身份证号码中获取表示日期的数字的字符串

d.CONCATENATE("19",MID(E2,7,2),"/",MID(E2,9,2),"/",MID(E2,11,2))目的就是将多个字符串合并在一起显示。

18位身份证号:410881************ 输出出生日期1979/06/05

=CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2,13,2))

方法二:

15位身份证号:410881********* 出生日期790605

=IF(LEN(E3)=15,MID(E3,7,6),MID(E3,9,6))

18位身份证号:410881************ 出生日期790605

=IF(LEN(E3)=15,MID(E3,7,6),MID(E3,9,6))

公式解释:

LEN(E2)=15:检查E2单元格中字符串的字符数目,本例的含义是检查身份证号码的长度是否是15位。

MID(E2,7,6):从E2单元格中字符串的第7位开始提取6位数字,本例中表示提取15位身份证号码的第7、8、9、10、11、12位数字。

MID(E2,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位数字。

根据身份证号码自动生成性别:

方法一:

在C列输入身份证号,在B列填写性别,可以在B2单元格中输入公式

“=IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=1,"男","女")”,其中:

LEN(C2)=15:检查身份证号码的长度是否是15位。

MID(C2,15,1):如果身份证号码的长度是15位,那么提取第15位的数字。