返回首页
当前位置: 主页 > Excel教程 > Excel函数教程 >

Excel和身份证不得不说的那些事儿(2)

时间:2013-12-10 15:25来源:Office教程学习网 www.office68.com编辑:麦田守望者

 

【计算年龄】

年龄的计算实际上就是通过前面得到的出生日期来用DATEDIF函数计算到当前所相差的年份数(周岁):

=DATEDIF(TEXT(RIGHT(19&MID(A1,7,IF(LEN(A1)=15,6,8)),8),"0-00-00"),NOW(),"Y")

如果你愿意,也可以通过生日来计算星座、生肖、法定退休年龄、晚婚晚育年龄等等。

07

 

【判别性别】

15位号码的最后一位,18位号码的倒数第二位都可以用来判断性别,奇数表示男性,偶数表示女性。

可以提取这位数字、或是提取以这个数字结尾的多位数字(一个数的奇偶性可以由它的末尾数字来判定)进行奇偶性判断来得到性别结果。这里需要注意的是,由于Excel的运算限制,不能提取一个位数太多的数字来判断奇偶性。

也可以分成几个步骤来设计完整的公式:

步骤1:提取数字

=MID(A1,15,3)

对于15位身份证号码,上述公式提取到是其末位数字,不包含其他字符占位。而对于18位的身份证号码,上述公式提取到的是其15~17位数字。

步骤2:判断奇偶性

=IF(MOD(MID(A1,15,3),2), "男","女")

通过MOD函数除以2取余数来进行奇偶判断,如果余数为1,表示奇数,得到男性判断,如果余数为0,得到女性判断。在IF函数中,第一参数不为0时都可以得到TRUE的判断结果。

或者也可以使用下面的公式:

=IF(-1^MID(A1,15,3)=1,"女","男")

通过负数的幂次方来进行判断,如果得到正数,说明其幂数是偶数,否则为奇数。

08

09

 

【获取所属地】

身份证号码的前两位是省份行政区的标识代码,3~6位数字是城市和区县代码,前6位的完整数字可以通过查询对应关系得到相应的所属地信息。

信息表可以在这里下载:微盘链接(http://vdisk.weibo.com/s/gnJoe)

10

 

【验证有效性】

二代身份证的最后一位校验位可以验证号码有效性。校验位的字符可以通过前17位号码计算取得,如果计算得到的字符(0123456789X)与实际最末位字符相符,可以大致认为这个号码真实有效。

校验位算法如下:

参数1:取前17位数字,以i表示其所在位数,从左向右依次为17、16、15...2、1

参数2:每一位上的身份证号码数字记为Ai

参数3:计算MOD(2^i,11),记为Wi

参数4:将每一个Ai与对应位置上的Wi相乘

将参数4得到的17个数值求和,然后除以11求余数,得到一个数值n

通过n在下面的对应表中进行查表,得到最终的校验位字符:

计算值n 0 1 2 3 4 5 6 7 8 9 10
校验码 1 0 X 9 8 7 6 5 4 3 2

 

11

------分隔线----------------------------
标签(Tag):excel excel2007 excel2010 excel2013 excel2003 excel技巧 excel教程 excel实例教程
------分隔线----------------------------
推荐内容
猜你感兴趣