不要轻易泄露你的身份证信息,但是你的HR是肯定知道的,那么怎么办?相信你家HR的职业操守!
一、如何校验身份证号码是否录入正确了?
1、当然你可以做数据验证,将身份证号码设定在18位字符上,但是身份证号码自己是有校验码的,你知道么?
首先,我们来重新认识一下身份证:身份证号码由18位组成,其中,
(1)第1-6位数字表示地区:
前1、2位数字表示:所在省(直辖市、自治区)的代码;
第3、4位数字表示:所在地级市(自治州)的代码;
第5、6位数字表示:所在区(县、自治县、县级市)的代码;
(2)第7-14位数字表示:出生年、月、日;
(3)第15、16位数字表示:所在地的派出所的代码;
(4)第17位数字表示性别:奇数表示男性,偶数表示女性;
(5)第18位数字是校检码:也有说个人信息码,它不是随计算机的随机产生,它是用来检验身份证的正确性。校检码可以是0-9的数字,有时也用X表示。
2、校验位的计算规则比较复杂:
(1)前十七位数字本体码加权求和公式
S = Sum(Ai * Wi), i = 0, ... , 16 ,先对前17位数字的权求和
Ai:表示第i位置上的身份证号码数字值
Wi:表示第i位置上的加权因子
Wi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
(2)计算模:Y = mod(S, 11)
(3)通过模得到对应的校验码
Y: 0 1 2 3 4 5 6 7 8 9 10
校验码: 1 0 X 9 8 7 6 5 4 3 2
检验公式:
=IF(RIGHT(A2)=MID("10X98765432",MOD(SUM(MID(A2,ROW(INDIRECT("1:17")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1),"真","假")
其中,A2为表格中身份证号对应的单元格位置,注意这是个数组公式,输入或者粘贴公式后,需要同时按住Ctrl和shift键再回车。
二、通过身份证我们可以得到以下信息:
1、地区:使用VLOOKUP公式可以检索出你所在的省份、城市、区县。。。
当然,在录入省、市、区县的的公式之前,我们需要在国家统计局获取到行政区划代码表。
2、个人
2.1 生日:=--TEXT(MID(身份证号码,7,8),"0-00-00")
公式解读:使用MID从身份证号码中的第7位数值开始截取8位连续数值,并利用TEXT转化为日期样式,利用减负运算,将文本型日期转化为数值日期
最后需要通过自定义格式设置为日期格式,确保生日是规范日期,可据此进行相关计算
2.2 年龄:=DATEDIF(出生日期,TODAY(),"y")
公式解读,返回从出生到计算当天的整年数,过了生日才算哦,温馨提示:别把这个隐藏函数输错了哦!
2.3 性别:=IF(MOD(MID(身份证号码,17,1),2),"男","女")
公式解读:提取身份证号码中的第17位数值,并利用MOD求余判断数值奇偶,来判定性别
当然用身份证号码还可以判断生肖、星座、幸运数字。。。怎么样,给我一个身份证号码,我可以给你算个塔罗牌了,嘎嘎,我咋不上天呢?