电子表格中提取身份证号.doc_第1页
电子表格中提取身份证号.doc_第2页
电子表格中提取身份证号.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1*假设身份证号在A1单元格,在B1输入公式 =MID(A1,7,4)&-&MID(A1,11,2)&-&MID(A1,13,2)即可 老生份证号就适当修改2*假设身份证号在A1单元格,在B1输入公式 =IF(LEN(A2)=18,(MID(A2,7,4)&-&MID(A2,11,2)&-&MID(A2,13,2),(19&MID(A2,7,2)&-&MID(A2,9,2)&-&MID(A2,11,2) 把B1单元格的公式向下复制就行了,与A列身份证号对应的生日就出现在B列了3*我的公式较复杂,我插入了城市代码:身份证号与地区对照表!中保存所有代码 A、 B、 C、 D、 E、 F、 G 序号、姓名、身份证号、性别、籍贯、出生年月、年龄 A2=1 B2=张三 C2D2=IF(LEN($C2)=15,IF(MOD(VALUE(RIGHT($C2,1),2)=0,女,男),IF(LEN($C2)=18,IF(MOD(VALUE(MID($C2,17,1),2)=0,女,男),0) E2=IF(VALUE(VLOOKUP(VALUE(MID($C2,1,6),身份证号与地区对照表!A:B,1,1)=VALUE(MID($C2,1,6),(VLOOKUP(VALUE(MID($C2,1,2)&0000),身份证号与地区对照表!A:B,2,1)&VLOOKUP(VALUE(MID($C2,1,4)&00),身份证号与地区对照表!A:B,2,1)&VLOOKUP(VALUE(MID($C2,1,6),身份证号与地区对照表!A:B,2,1),身份证号与城市代码不符) F2=IF(LEN($C2)=15,CONCATENATE(19,MID($C2,7,2),.,MID($C2,9,2),IF(LEN($C2)=18,CONCATENATE(MID($C2,7,4),.,MID($C2,11,2),0) G2=IF(LEN($C2)=15,YEAR(NOW()-1900-VALUE(MID($C2,7,2),IF(LEN($C2)=18,YEAR(NOW()-VALUE(MID($C2,7,4),0)中国居民身份证号码是一组特征组合码,原为位,现升级为位,其编码规则为: 位:位数字常住户口所在县市的行政区划代码,位数字出生日期代码,位数字顺序码。 位:位数字常住户口所在县市的行政区划代码,位数字出生日期代码,位数字顺序码和位检验码。 其中位数字顺序码,是为同一地址码的同年同月同日出生人员编制的顺序号,偶数的为女性,奇数的为男性。 、提取籍贯地区的行政区划代码(A2为身份证号,下同) 与位通用:=LEFT(A2,6) 如果有一个编码和省份地区的对照表,可以用VLOOKUP函数来提取地区信息。 、提取出生日期信息 位:=-TEXT(19&MID(A2,7,6),#-00-00) 位:=-TEXT(MID(A2,7,8),#-00-00) 与位通用:=-TEXT(IF(LEN(A2)=15,19,)&MID(A2,7,6+IF(LEN(A2)=18,2,0),#-00-00) 简化公式:=-TEXT(LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),#-00-00) (请将输入公式的单元格格式设置为日期格式) 、提取性别信息 位:=IF(MOD(RIGHT(A2),2)=1,男,女) 位:=IF(MOD(MID(A2),17,1)=1,男,女) 与位通用:=IF(MOD(MID(A2,IF(LEN(A2)=15,15,17),1),2)=1,男,女) 简化公式:=IF(MOD(RIGHT(LEFT(A2,17),2),男,女) 、检验身份证号码的正确性 位身份证号码的最后一位是检验码,它是根据身份证前17位数字依照规则计算出来的,其值或X。一般情况只要有一位数字输入错误,依照规则计算后就会与第18位数不符。当然不排除按错误号码计算后恰好与检验码相符的情况,但这种情况出现的可能性较低。因此,对位号码的验证采用如下公式: =MID(10X98765432,MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT(1:17),1)*2(18-ROW(INDIRECT(1:17),11)+1,1)=RIGHT(A2,1) 对于位身份证,由于没有检验码,我们只能简单地去判断出生日期代码是否是一个有效的日期,避免输入一些像“731302”或“980230“等这样不存在的日期。 =ISNUMBER(-TEXT(19&MID(A2,7,6),#-00-00) 综合位和位后的通用公式为: =IF(LEN(A2)=18,MID(10X98765432,MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT(1:17),1)*2(18-ROW(INDIRECT(1:17),11)+1,1)=RIGHT(A2),IF(LEN(A2)=15,ISNUMBER(-TEXT(19&MID(A2,7,6),#-00-00) 由于目前位身份证号码已经很少了,如果对位的号码不需要作进一步的判断,则公式可以简化成: =IF(LEN(A2)=18,MID(10X98765432,MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT(1:17),1)*2(18-ROW(INDIRECT(1:17),11)+1,1)=RIGHT(A2),LEN(A2)=15) 将上面的公式放到B2单元格,如果结果为TRUE,则身份证号是正确的,结果为FALSE则是错误的。 你也可以将上述公式放在数据有效性中,防止录入错误的身份证号。操作方法:选择需要输入身份证的全部单元格区域,比如A2:A10,点菜单数据-有效性,在允许的下拉框中选择自定义,在公式输入上面的15位和18位通用公式,确定以后即可。注意:公式里的A2是你刚才选定要输入身份证的单元格区域的第一个单元格,如果你是要在C3:C20输入身份证号,则将公式里的A2改为C3。另外,你也可以先设置好某单个单元格的数据有效性(这时公式的A2改为选定的单元格),再用格式刷将其格式刷到其他需要相同设置的单元格。 、位升为位 =IF(LEN(A2)=15,REPLACE(A2,7,19)&MID(10X98765432,MOD(SUMPRODUCT(MID(REPLACE(A2,7,19),ROW(INDIRECT(1:17),1)*2(18-ROW(INDIRECT(1:17),11)+1,1),A2) 、位转换为位 =IF(LEN(A2)=18,LEFT(REPLACE(A2,7,2,),15),A2) 7、示例 表中公式:B2=IF(LEN(A2)=18,MID(10X98765432,MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT(1:17),1)*2(18-ROW(INDIRECT(1:17),11)+1,1)=RIGHT(A2),IF(LEN(A2)=15,ISNUMBER(-TEXT(19&MID(A2,7,6),#-00-00)C2=IF(A2,TEXT(LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),#-00-00)+0,)D2=IF(A2,IF(MOD(RIGHT(LEFT(A2,17),2),男,女),)E2=IF(A2,DATEDIF(TEXT(LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),#-00-00),TODAY(),y),)F2=IF(A2,VLOOKUP(LEFT(A2,2),地区表!A:D,2,),)H2=IF(LEN(A2)=15,REP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论