由身份证号求性别的三种方法论文_徐峰

安徽省固镇县职业技术学校 安徽 固镇 233700

生活中,我们经常要报送人员信息表,如学生简明登记表、教师继续教育报名表、电大学生信息表、企业用工人员信息等。在这些表中大都包括身份证号码这一列内容,如果性别输入错误,往往会闹出笑话。用公式计算性别,我在实际教学中使用了以下三种方法:

第一种方法:使用IF函数计算性别

预备知识:Excel中IF函数的功能是:如果条件成立,就返回一个结果,否则返回另一个结果。格式为:=IF(函数表达式,结果1,结果2)

根据IF这一功能,我们可以考虑用它来计算性别。这里需用到身份证号的第17位数,这一位数是确定居民性别的:如果这位数为1、3、5、7、9时,则该居民性别为“男”;反之当这位数为2、4、6、8、0时,则该居民的性别为“女”。根据这一规则,我们就可以用这位数来计算性别了。怎么求出身份证号码中的第17位数呢?这里还必须用到另一个函数MID,该函数的功能是求出某一字符串中从左边数自第n 位开始的m位数字。根据这一功能,我们就可以利用Mid函数求出身份证号码中自17位开始的1位数字。

如下图:在B2单元格中的公式为:=MID(A2,17,1)

在D2中一步完成求性别的公式为:=IF(MID(A2,17,1)=”1”,”男”,IF(MID(A2,17,1)=”3”,”男”,IF(MID(A2,17,1) =”5”,”男”,IF(MID(A2,17,1)=”7”,”男”,IF(MID(A2,17,1)=”9”,”男”,”女”)))))

第三种方法:计算15位身份证居民性别

15位身份证号码的最后一位,18位身份证号码的第17位,为居民性别位,当该位是奇数时为男,偶数为女。两种身份证号,取出的位数不一致,如何计算呢?以下分几种情况进行分析:

1.只计算15位身份证的性别。15位身份证号码的最后一位为性别识别位,为取出身份证号码的最后一位,需用right函数。该函数功能为:从字符串的右边起取出n位字符,格式:=right(字符串,n)。

本例中,取A2右侧的1位字符,公式变成:=right(a2,1)

这样新的问题就来了,15位身份证号用一个公式,18位身份证号用另外一个公式,能不能采用一种方法来计算两种不同身份证号的性别呢?下面分析第三种情况。

3.新旧身份证号的性别求解。引入字符串长度函数Len,可以更方便求解。Len函数的功能是计算字符串的长度,即字符串中包含多少字符,格式为:=Len(字符串)。本例用它计算身份证号为15位还是18位,若15位就用15位的公式,18位就用18位的公式。

=IF(LEN(A2)=18,IF(MOD(MID(A2,17,1),2)=1,”男”,”女”),IF(MOD(RIGHT (A2,1),2)=1,”男”,”女”))

还有另外一种方法求性别。用mid函数从身份证号码的第15位开始提取3位数,即15、16、17位,如果身份证号是15位的,只会提取第15位,如果身份证号为18位,则从身份证号提取的3位数,即第15、16、17位,取了三位数,也不会影响判断该数的奇偶,因为奇偶的判断只看数的最后一位。再用MOD函数判断提取数与2的余数,结果为1则为奇数,结果为0则为偶数。把这个函数当作IF函数的判断条件,省略了“=1”,因为MOD(提取数.2)的结果只会是1或0。假设身份证号码在A1单元格,公式为:=if(mod(mid(a1,15,3),2),”男”,”女”)。

这种方法,不区分新旧身份证号码,是一种比较简单的求性别的方法,但绝不是最后一种方法。

论文作者:徐峰

论文发表刊物:《教育学》2020年1月总第201期

论文发表时间:2019/11/21

标签:;  ;  ;  ;  ;  ;  ;  ;  

由身份证号求性别的三种方法论文_徐峰
下载Doc文档

猜你喜欢