第1个回答 2015-10-13
现在的身份证号码包括18位,从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
1、通过数据有效性可以做一些最基本的检查。
点菜单“数据”——“有效性”,点“设置”标签,在“允许”中选择“自定义”,在后面“公式”中输入=and(len(a1)=18,countif(s:s,left(a1,6)))。点“出错警告”标签,点中“出错警告”,在“样式”中选“停止”,在“标题”中输入“你输入的身份证号有误!请重新输入!”。该公式只检查了输入的身份证位数是否为18位和地区编号是否正确。其中地区编号事先建立在S列。
2、对于要求严格的检查需要用VBA。除作以上检查处,可以检查出生日期是否符合规则,顺序码中的男女标识是否对应,校验码是否正确等。
3、最严格的检查需要与公安部门的“公民身份信息联网核查系统”联网核对。
第2个回答 2019-04-21
'Excel判定身份证号码是否正确的公式,18位文本格式的身份证填在A1单元格,把公式输入在B1单元格
=IF(LOOKUP(MOD(MID(A1,1,1)*7+MID(A1,2,1)*9+MID(A1,3,1)*10+MID(A1,4,1)*5+MID(A1,5,1)*8+MID(A1,6,1)*4+MID(A1,7,1)*2+MID(A1,8,1)*1+MID(A1,9,1)*6+MID(A1,10,1)*3+MID(A1,11,1)*7+MID(A1,12,1)*9+MID(A1,13,1)*10+MID(A1,14,1)*5+MID(A1,15,1)*8+MID(A1,16,1)*4+MID(A1,17,1)*2,11),{0;1;2;3;4;5;6;7;8;9;10},{"1";"0";"X";"9";"8";"7";"6";"5";"4";"3";"2"})=UPPER(MID(A1,18,1)),"正确","错误")