Excel判断身份证号码数据的第17或15位数字的奇偶性决定男女性别
2017-09-12 09:41
525 查看
身份证号码分为18位或15位数,如图 75‑1所示,之前使用15位数字,其中第15位数字为奇数表示男性,升级后以第17位数字的奇偶表示性别,要判断奇偶性就必须取得后3位以同时满足15、18位身份证号的取数要求。公式中使用到了MOD函数,由于此函数的限制,所以仅判断15位身份证号返回正确结果,超过则视为0。下面与大家分享根据B列18位或15位数的身份证号码判断性别男女的方法。
![](http://files.jb51.net/tech/office/201506/201507021003367.jpg)
图75‑1 根据身份证号码判断性别
解决方案
判断18位身份证号的第17位或15位身份证号的末位数字奇偶性。
操作方法
在C3单元格输入以下公式并向下复制:
=IF(MOD(RIGHT(LEFT(B3,17),3),2),"男","女")
原理分析
取得身份证号中性别数字
中国公民身份证号码原使用15位数字表示,其中第15位数字为奇数表示男性,升级后的身份证号码以第17位数字的奇偶表示性别。RIGHT(LEFT(B3,17),3)截取身份证前17位数字的后3位,同时可以满足15、18位身份证号的取数要求。
公式中使用到了MOD函数,下面是MOD函数功能的简要介绍:
mod 就是返回除法中余数,如10处以3余1为:
公式为
=mod(10,3)结果为1
被除数 除数也可为小数,返回剩余小数,但由于2进制的转化,数据有所差值,建议最好不要公式中有小数,误差会较大。
MOD函数的限制
在D3单元格输入以下公式将返回#NUM!错误:
=IF(MOD(LEFT(B3,17),2),"女","男")
这是由于MOD函数无法计算被除数与除数的商达到或超过2^40的数据。Excel 2003、2007版中,MOD函数参数之商限制为2^27倍。
ISODD、ISEVEN函数虽然不受参数之商限制,但受15位数字计算精度的限制,在E3单元格输入以下公式并向下复制:
=IF(ISODD(LEFT(B3,17)),"男","女")
仅E6判断15位身份证号返回正确结果,其他均将超过15位的数字视为0,即判别未偶数而返回性别为"女"。
以上便是为大家介绍的有关在Excel中根据身份证号码判断性别的方法,原理就是判断末位数字的奇偶性,公式中使用到了MOD函数及RIGHT和LEFT,至于函数使用的详细说明可以参阅相关文档。如果你是从事财务、销售、HR等办公人士,建议将此技巧学会,以备不时之需。http://www.wdashi.com/
![](http://files.jb51.net/tech/office/201506/201507021003367.jpg)
图75‑1 根据身份证号码判断性别
解决方案
判断18位身份证号的第17位或15位身份证号的末位数字奇偶性。
操作方法
在C3单元格输入以下公式并向下复制:
=IF(MOD(RIGHT(LEFT(B3,17),3),2),"男","女")
原理分析
取得身份证号中性别数字
中国公民身份证号码原使用15位数字表示,其中第15位数字为奇数表示男性,升级后的身份证号码以第17位数字的奇偶表示性别。RIGHT(LEFT(B3,17),3)截取身份证前17位数字的后3位,同时可以满足15、18位身份证号的取数要求。
公式中使用到了MOD函数,下面是MOD函数功能的简要介绍:
mod 就是返回除法中余数,如10处以3余1为:
公式为
=mod(10,3)结果为1
被除数 除数也可为小数,返回剩余小数,但由于2进制的转化,数据有所差值,建议最好不要公式中有小数,误差会较大。
MOD函数的限制
在D3单元格输入以下公式将返回#NUM!错误:
=IF(MOD(LEFT(B3,17),2),"女","男")
这是由于MOD函数无法计算被除数与除数的商达到或超过2^40的数据。Excel 2003、2007版中,MOD函数参数之商限制为2^27倍。
ISODD、ISEVEN函数虽然不受参数之商限制,但受15位数字计算精度的限制,在E3单元格输入以下公式并向下复制:
=IF(ISODD(LEFT(B3,17)),"男","女")
仅E6判断15位身份证号返回正确结果,其他均将超过15位的数字视为0,即判别未偶数而返回性别为"女"。
以上便是为大家介绍的有关在Excel中根据身份证号码判断性别的方法,原理就是判断末位数字的奇偶性,公式中使用到了MOD函数及RIGHT和LEFT,至于函数使用的详细说明可以参阅相关文档。如果你是从事财务、销售、HR等办公人士,建议将此技巧学会,以备不时之需。http://www.wdashi.com/
相关文章推荐
- Excel身份证号码判断男女性别:Excel函数不求人
- C# 根据身份证号码判断出生日期和性别
- 页面输入判断是否为各种数字(如空、0~9数字、浮点数、电话手机号码、身份证、邮编等等)
- 判断用npoi 读取 excel 文件中的数据类型是日期OR数字
- 在EXCEL中根据身份证号码计算年龄、出生年月、性别
- MySql 根据身份证号判断年龄所属省份与性别男女
- php导出数据到excel,身份证等数字常用格式
- PHP 根据身份证号码,获取性别、获取生日、计算年龄、获取地址、获取生肖、获取星座、以及判断是否是身份证号
- 15位, 18位的身份证号码的验证函数.以及根据身份证取省份,生日,性别
- vbscript和javascript版的15位, 18位的身份证号码的验证函数.以及根据身份证取省份,生日,性别
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- 一些正则判断 - 验证是否是正确的手机号码/身份证/隐藏中间几位数字
- C# 根据身份证号码判断出生日期和性别
- 通过身份证号码判断男女
- EXCEL中如何提取身份证出生日期和性别信息以及检验身份证号码的正确性
- Oracle根据身份证号码判断性别,年龄
- 校验出生日期,校验身份证格式,校验会员账户:9开头数字,校验手机号码是否合法,判断字符串中的url是否都是图片格式字符串,通过图片url读取图片并将图片转换成base64编码
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方-------缺点,必须使用table tr td
- Java jxl导入excel文件,导入的数字、身份证号码、手机号变成了科学计数法,解决方案
- Oracle根据身份证号码判断性别