广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租 广告位招租

利用Excel解读身份证号码信息


  我们介绍用Excel自动解读身份证号码信息的方法。这个自动解读表可以将身份证表格中的出生日期、性别自动解读出来。如果您愿意,当然还可以用挖掘出来的信息做更多的数据统计和计算。文章末尾提供范例文件供大家下载参考。

  众所周知,15位(18位)身份证号码的第7—12位(14位)数字代表着持证人的出生年、月、日;第15位(17位)数字代表着持证人的性别(奇数为“男”,偶数为“女”)。下面,我们就利用Excel强大的函数功能,从身份证号码中将这些信息挖掘出来,显示在相应的单元格中。

  本例涉及到的Excel函数如下:

  1、DATE(year,month,day)
  2、IF(Logical,Value_if_true,Value_if_false)
  3、LEN(text)
  4、MID(text,start_num,num_chars)
  5、MOD(number,divisor)

  在这里,我们假定身份证号码保存在C列(从C2单元格开始)中,性别和出生年、月、日分别保存在D列和E列中。

  一、性别的判断

  选中D2单元格,输入公式:
  =IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=0,"女","男")
  或
  =IF(MOD(IF(LEN(C7)=15,MID(C7,15,1),MID(C7,17,1)),2)=1,"男","女"),
  输入完成后,按下“Enter”键进行确认,第1位持证人的性别则自动显示在D2单元格中(如图1)。

  上述第一个公式的含义分三层来理解:

  ①、如果身份证号码是15位(LEN(C2)=15),则取其15位数字(MID(C2,15,1)),否则取其17位数字(MID(C2,17,1))。
  ②、然后求取出来的数值除2后的余数(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2))。
  ③、如果(IF)余数为“0”(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=0),则显示“女”,否则显示“男”。



  再次选中D2单元格,用“填充柄”将上述公式复制到D列下面的单元格中,即可显示出其他持证人的性别。

  注意:如果将上述公式修改为:=IF(IF(LEN(C2)=15,MID(C2,15,1),IF(LEN(C2)=18,MID(C2,17,1),""))="","号码有错",IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),IF(LEN(C2)=18,MID(C2,17,1),"")),2)=1,"男","女")),当输入的号码不是15位或18位,系统提示“号码有错”(参见图1),则效果更佳。

  注意:修改后的公式与上面的公式含义相似。


  二、显示出生年、月、日

  选中E2单元格,输入公式:=IF(LEN(C2)=15,DATE(MID(C2,7,2),MID(C2,9,2),MID(C2,11,2)),DATE(MID(C2,7,4),MID(C2,11,2),MID(C2,13,2))),输入完成后,按下“Enter”键进行确认,第1位持证人的出生年、月、日则自动显示在E2单元格中(参见图1)。

  上述公式的含义如下:

  如果(IF)身份证号码是15位(LEN(C2)=15),则取其7至8位(MID(C2,7,2))、9至10位(MID(C2,9,2))、11至12位(MID(C2,11,2)),并以日期的格式显示出来(DATE(MID(C2,7,2),MID(C2,9,2),MID(C2,11,2)));

  反之,取其7至10位(MID(C2,7,4))、11至12位(MID(C2,11,2))、13至14位(MID(C2,13,2)),再以日期的格式显示出来(DATE(MID(C2,7,4),MID(C2,11,2),MID(C2,13,2)))。

  再次选中E2单元格,用“填充柄”将上述公式复制到E列下面的单元格中,即可显示出其他持证人的出生年、月、日。

  选中E列中含有日期的单元格区域,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),切换到“格式”标签中(通常是默认的标签),先在“格式类别”下面选中“日期”选项,然后在“示例”下面选中一种适合国人习惯的日期样式,确定返回。



  注意:
  ①、如果不设置单元格格式,也是完全可以的,只不过显示出来的日期样式是“1976-12-17”。
  ②、如果将上述公式修改为:=IF(LEN(C2)=15,DATE(MID(C2,7,2),MID(C2,9,2),MID(C2,11,2)),IF(LEN(C2)=18,DATE(MID(C2,7,4),MID(C2,11,2),MID(C2,13,2)),"号码有错")),当输入的号码不是15位或18位,系统提示“号码有错”(参见图1),则效果更佳。

  注意:修改后的公式与上面的公式含义相似。下载文件 范例文件下载



文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
日志标签:
相关日志:
评论: 0 | 引用: 0 | 查看次数: 8215
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭