Excel表格中使用数据有效性判断输入的身份证号码是否正确高手进阶

【Excel表格中使用数据有效性判断输入的身份证号码是否正确高手进阶】1、身份证位数(是否为15位或18位)
2、日期是否合法(主要是判断月份是否在1-12之间, 日期是否超出当月的天数等)
3、身份证号是否重复 。
数据有效性公式如下:
=NOT(OR(AND(LEN(A1)<>15,LEN(A1)<>18),COUNTIF(A:A,A1)<>1,ISERROR(1*TEXT((LEN(A1)=15)*19&MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))))
可以设置提示内容为:
“身份证位数或者日期有误, 或者身份证号有重复, 请核准后重新输入!”
这样设置好后有以上三错误就不能输入了 。
但还有个缺点, 就是不知道和上面那个身份证号重复了 。
所以建议采用如下方法:
在数据有效性中只判断位数和日期问题, 公式如下:
=NOT(OR(AND(LEN(A1)<>15,LEN(A1)<>18),ISERROR(1*TEXT((LEN(A1)=15)*19&MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))))
提示内容为:
“身份证位数或者日期有误, 请核准后重新输入!”
然后在A列用条件格式显示重复的身份证号码, 条件格式的条件设为:
公式=COUNTIF(A:A,A1)>1
将字体设为红色 。
这样设置后, 位数和日期有问题不能输入, 重复的可以输入, 但会显示为红色字体, 以便你检查是这个单元格错了, 还是先输入的那个单元格(红色字体)错了 。

    推荐阅读