亲宝软件园·资讯

展开

Excel由身份证号判断男女的公式方法 Excel怎样判断身份证号码数据的第17或15位数字的奇偶性决定男女性别

人气:0

SFZ号码分为18位或15位数,如图 75?1所示,之前使用15位数字,其中第15位数字为奇数表示男性,升级后以第17位数字的奇偶表示性别,要判断奇偶性就必须取得后3位以同时满足15、18位SFZ号的取数要求。公式中使用到了MOD函数,由于此函数的限制,所以仅判断15位SFZ号返回正确结果,超过则视为0。下面与大家分享根据B列18位或15位数的SFZ号码判断性别男女的方法。

图75?1 根据SFZ号码判断性别

解决方案

判断18位SFZ号的第17位或15位SFZ号的末位数字奇偶性。

操作方法

在C3单元格输入以下公式并向下复制:

=IF(MOD(RIGHT(LEFT(B3,17),3),2),"男","女")

原理分析

取得SFZ号中性别数字

中国公民SFZ号码原使用15位数字表示,其中第15位数字为奇数表示男性,升级后的SFZ号码以第17位数字的奇偶表示性别。RIGHT(LEFT(B3,17),3)截取SFZ前17位数字的后3位,同时可以满足15、18位SFZ号的取数要求。

公式中使用到了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位SFZ号返回正确结果,其他均将超过15位的数字视为0,即判别未偶数而返回性别为"女"。

以上便是为大家介绍的有关在Excel中根据SFZ号码判断性别的方法,原理就是判断末位数字的奇偶性,公式中使用到了MOD函数及RIGHT和LEFT,至于函数使用的详细说明可以参阅相关文档。如果你是从事财务、销售、HR等办公人士,建议将此技巧学会,以备不时之需。

加载全部内容

相关教程
猜你喜欢
用户评论