身份證號碼之所以會顯示為X,是與校驗碼的生成規(guī)則有關(guān), 跟大家簡單的介紹下,身份證號碼第18位,也就是校驗碼的編寫規(guī)則吧!看完你就懂為什么會顯示為X了 一、身份證號碼的構(gòu)成現(xiàn)在的身份證大多都是18位的,15位的基本已經(jīng)見不到了,我們就以18位的身份證號碼為例,來簡單的回顧下身份證號碼的編寫規(guī)則 地址代碼(1-6位) 1-2位是省份代碼,3-4位是城市代碼,5-6位是區(qū)間代碼,網(wǎng)上很多地址對照表的,感興趣的可以搜下 生日代碼(7-14位) 7-10位是年份,11-12位是月份,13-14位是天數(shù),這個相信很多人都知道,之前是講過的 順序碼(15-17位) 15-16位,當(dāng)?shù)嘏沙鏊o的主要是為了避免同年同月出生重復(fù)的情況,其中第17位是性別代碼,奇數(shù)會分給男性,偶數(shù)會分給女性 校驗碼(18位) 顧名思義他的作用就是用來檢驗身份證號碼是否正確的,是根據(jù)前面十七位數(shù)字碼,按照特定的計算得出。下面跟大家簡單地說下計算的規(guī)則,感興趣的可以具體搜下 二、計算規(guī)則1.計算余數(shù) 身份證號碼的第1到17位幾乎可以說是固定的,而根據(jù)規(guī)則,1到17位,還分別對應(yīng)不同的系數(shù),1到17位的系數(shù)分別為: 首先需要將每個位數(shù)的數(shù)字與對應(yīng)的系數(shù)相稱得到一個乘積,然后再將乘積求和,這個我們可以使用函數(shù)SUMPRODUCT,公式如下,結(jié)果為323。 =SUMPRODUCT(B2:B18,C2:C18) 隨后需要將323除以11來得到一個余數(shù),這個余數(shù)我們可以使用MOD函數(shù),它的作用就是求余數(shù),結(jié)果為4 公式=MOD(D19,11) 2.計算校驗碼 求出余數(shù)后,還有一個余數(shù)校驗碼的對照表,我放在下面了,剛才求得余數(shù)為4,根據(jù)對照表可知身份證最后一位是8,如果最后一位不是8,那么它就是錯誤的號碼 因為除以11,所以說是有10個余數(shù)的,10個余數(shù)就會對應(yīng)10個校驗碼,如果校驗碼寫10,那么身份證的長度就會超過18位。所以為了保證身份證號碼長度的統(tǒng)一,就使用X來代替數(shù)字10,X其實是羅馬數(shù)字10的意思。 三、禁止錄入錯誤的號碼利用校驗碼,我們可以在Excel中設(shè)置禁止錄入錯誤的身份證號碼 首先在旁邊粘貼公式,會顯示一列錯誤值,不用擔(dān)心,隨后選擇數(shù)據(jù)區(qū)域,為數(shù)據(jù)區(qū)域添加【數(shù)據(jù)驗證】,將【允許】設(shè)置為自定義,直接輸入=B2,就是第一個公式,確定即可 公式:=IF(RIGHT(A2,1)='X','X',--RIGHT(A2,1))=VLOOKUP(MOD(SUMPRODUCT(--MID(A2,{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1),{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11),{0,1;1,0;2,'X';3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2},2,0) 以上就是今天的全部內(nèi)容啦,身份證號碼結(jié)尾位X其實并沒有什么特殊的,但是在Excel中,我特別喜歡身份證號碼結(jié)尾是X的人,有人知道為什么嗎? 如果你想要從零學(xué)習(xí)Excel,跟大家推薦下我的專欄 現(xiàn)在已經(jīng)更新120個章節(jié),后期還會陸續(xù)新增章節(jié),專欄永久有效,無時間限制,并且配備了課件,如果你想要學(xué)習(xí),可以點擊下方專欄試看下 |
|