18位身份证号码的最后一位拾检验码,它是根据身份证前17位数字依照规则计算出来的,其值为0-9或x,一般情况只要有一位数字输入错误,依照规则计算后就会与第18位数不符。当然不排除按错误号码计算后恰好与检验码相符的巧合情况,但这种情况出现的可能性较低。因此,对18位号码的验证采用如下公式:(假如身份证号码在A2单元格) =mid(“10x98765432”,mod(sumproduct(mid(a2,row(indirect(“1:17”)),1)*2^(18-row(indirect(“1:17”)))),11)+1,1)=right(a2,1)
将上面的公式放到B2单元格,如果结果为TRUE,则身份证号码是正确的,结果为FALSE则是错误的。
也可以将上述公式放到数据有效性中,防止录入错误的身份证号。操作方法:选择需要输入身份证号区域的第一个单元格,点菜单“数据-有效性”,在“允许”的下拉框中选择“自定义”,在“公式”框中输入验证公式,确定即可。注意将A2修改为相应的单元格代码,再复制到全部录入身份证号码的区域。