一、分析身份证号码
身份证号码与个人的性别、出生年月、籍贯等信息紧密相连。无论是15位还是18位的身份证号码,都保存了相关的个人信息。
15位身份证号码:第7、8位为出生年份(两位数),第9、10位为出生月份,第11、12位代表出生日期,第15位代表性别,奇数为男,偶数为女。
18位身份证号码:第7、8、9、10位为出生年份(四位数),第11、12位为出生月份,第13、14位代表出生日期,第17位代表性别,奇数为男,偶数为女。
例如,某员工的身份证号码(15位)是320521720807024,表示1972年8月7日出生,性别为女。如果能从这些身份证号码中提取上述个人信息,不仅快速简便,而且不易出错,核对时只需检查身份证号码,可大大提高工作效率。
二、提取个人信息
这里需要使用IF、LEN、MOD、MID、DATE等函数从身份证号码中提取个人信息。如图1所示,员工的身份证号码信息已输入完毕(C列),出生年月信息填写在D列,性别信息填写在B列。
1. 提取出生年月信息
由于报表只需填写出生年月,不需要出生日期,因此只需关心身份证号码的相应部位,显示为“7208”这样的信息。在D2单元格中输入公式“=IF(LEN(C2)=15,MID(C2,7,4),MID(C2,9,4))”,其中:
LEN(C2)=15:检查C2单元格中字符串的字符数目,本例含义是检查身份证号码长度是否为15位。
MID(C2,7,4):从C2单元格中字符串的第7位开始提取四位数字,本例表示提取15位身份证号码的第7、8、9、10位数字。
MID(C2,9,4):从C2单元格中字符串的第9位开始提取四位数字,本例表示提取18位身份证号码的第9、10、11、12位数字。
IF(LEN(C2)=15,MID(C2,7,4),MID(C2,9,4)):IF是逻辑判断函数,表示如果C2单元格是15位,则提取第7位开始的四位数字,否则提取第9位开始的四位数字。
如果需要显示为“70年12月”这样的格式,请使用DATE格式,并在“单元格格式→日期”中进行设置。
2. 提取性别信息
由于报表中员工序号按上级核定编制编排,无法按男、女固定顺序,手工输入既麻烦又易出错。可使用公式提取性别:在B2单元格中输入公式“=IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","女"),IF(MOD(MID(C2,17,1),2)=1,"男","女"))”。该公式先判断身份证号码长度,再提取相应位置的数字,用MOD函数判断奇偶性,从而得出性别。