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
將字體設為紅色 。
這樣設置后, 位數和日期有問題不能輸入, 重復的可以輸入, 但會顯示為紅色字體, 以便你檢查是這個單元格錯了, 還是先輸入的那個單元格(紅色字體)錯了 。

    推薦閱讀