- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
函数自动提取身份证号码信息
大家知道,目前的身份证号码有两种格式,一种是15位号码(如340501761217022),一种是18位号码(。在15位号码中,第7—12位数字(如761217)表示持证人的出生时间(如1976年12月17日),第15位数字(如2)表示持证人的性别(奇数为“男”,偶数为“女”);在18位号码中,第7—14位数字(表示持证人的出生时间(如1970年1月9日),第17位数字(如1)表示持证人的性别。
一、信息的提取、判断和自动显示此处,假定身份证号码保存在C列中,性别和出生时间分别保存在D列和E列中。
性别的自动显示
①选中D2单元格,输入公式:=IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=0,女,男),输入完成后,按下“Enter”键进行确认,第1位员工的性别则自动显示在D2单元格中[如图1]。
上述函数式中涉及到的几个函数的含义分别是:
LEN(C2)函数,用于统计C2单元格中字符串的字符数目。MID(C2,15,1)函数,用于从C2单元格中字符串的第15位开始提取1个字符。MOD(number,divisor)函数,用于给出数字number除以数字divisor后的余数。IF()函数,是一个逻辑判断函数。上述函数式的意思是:IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)):如果[IF]C2单元格中字符串的字符数是15[LEN(C2)=15],则从第15位开始,提取C2单元格字符串中的1个字符[MID(C2,15,1)];如果不是15位,则从第17位开始,提取1个字符[MID(C2,17,1)]。 =IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=0,女,男):如果[IF]提取出来的数值[IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1))]除以“2”后余数为“0”[MOD(IF(LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=0],则显示为“女”,反之显示为“男”。
②再次选中D2单元格,将鼠标移至该单元格右下角成十字线状时[如图2,我们通常称这种状态为“填充柄”状态]。
按住左键向下拖拉,将D2单元格中的公式复制到下面的单元格中,显示出其他持证人的性别。
2、出生时间的自动显示
①选中E2单元格,输入公式:=IF(LEN(C2)=15,MID(C2,7,2)+1900,MID(C2,7,4))-IF(LEN(C2)=15,MID(C2,9,2),MID(C2,11,2))-IF(LEN(C2)=15,MID(C2,11,2),MID(C2,13,2)),输入完成后,按下“Enter”键进行确认,第1位员工的???生时间则自动显示在D2单元格中[参见图1]。
上述函数式的意思是:
IF(LEN(C2)=15,MID(C2,7,2)+1900,MID(C2,7,4)):如果[IF]C2单元格中字符串的字符数为15[LEN(C2)=15],提取C2字符串中7、8两位数字,并加上1900[MID(C2,7,2)+1900],如果字符数不是15,则提取C2字符串的7—10位数字[MID(C2,7,4)]。
函数式“IF(LEN(C2)=15,MID(C2,9,2),MID(C2,11,2))和IF(LEN(C2)=15,MID(C2,11,2),MID(C2,13,2))”的意思与上面相似。
然后用连字符[]将上述三个函数式的运算结果与两个间隔短线“-”连接成一个整体,表示出第一位持证人的出生时间。
②仿照上面的操作,用填充柄将E2单元格中的公式复制到下面的单元格中,用于判断出其他持证人的出生时间。
③选中E列中含有日期的单元格区域,执行“格式→单元格”命令,打开“单元格格式”对话框,切换到“格式”标签中(通常是默认的标签),先在“格式类别”下面选中“日期”选项,然后在“示例”下面选中一种适合国人习惯的日期样式,确定返回[显示结果参见图1]。
[特别提示]如果不进行上述第③步的操作,也是完全可以的,只不过显示出来的日期是“1976-12-17”样式。
二、错误信息的提醒
采取上面的函数式时,如果输入的身份证号码有错误,函数式可能仍返回一个合理的结果,使我们难以发现错误。于是,我对上述相关的函数式进行了改进。
1、对“性别”函数的改进
先将D2单元格中的公式修改为:=IF(MOD(IF(LEN(C2)=15,MID(C2,15,1),IF(LEN(C2)=18,MID(C2,17,1),错误)),2)=0,女,男),然后用“填
文档评论(0)