Hello,大家好,之前很多粉絲都問到關于身份證号碼的問題:機器是如何知道我輸入了錯誤的身份證号碼?為什麼我的身份證号碼結尾是X?身份證号碼計算地址與性别的原理是什麼?這幾天閑下來了,跟大家講解下身份證号的編寫規則,這些問題就迎刃而解了
一、身份證号碼的組成1999年7月1日後身份證号碼由之前的15位提升至現在的18位,在這裡我們也是根據18位的身份證号碼來講解的,我們可以簡單的将其認為是由4個部分組成的,如下圖所示
1.地址碼
第1到6位是地址碼,其中第1-2位是省份的代碼,3-4位是城市的代碼,5-6位是區縣的代碼,戶口所在地決定了身份證号碼1-6位的具體數字
2.出生日期碼
第7到14位是出生日期,7-10位是年份,11-12位是月份,13-14位是天數,這是每個人與生俱來的,比如出生日期的2021年1月1日,那麼他的出生日期碼為:20210101
3.順序碼
15-17位是順序碼,就是在同一地址碼區域内,對同年同月同日生的人員進行編号,其中第17位是性别代碼,奇數會分給男性,偶數會分給女性
4.校驗碼
顧名思義他的作用就是用來檢驗身份證号碼是否正确的,機器也是根據這一位來判斷身份證号碼是否正确
它是由号碼編制單位根據特定的編碼規則計算出來的,是一個0-10的數字,如果結果是10将其作為尾号身份證号碼就會變為19位,所以利用X來代替10這個結果,這樣的話身份證号碼依然還是18位
二、校驗碼的計算規則1.計算餘數
身份證号碼1到17位的值都是确定的,我們需要根據這17個數字來計算校驗碼,每個位數的數字都對應了不同的系數,1到17位的系數分别為:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2
首先我們需要将每個位數的數字與對應的系數相乘得到乘積,然後求和,如上圖橙色區域
7*4 9*1 10*6 5*1 8*3 4*4 2*1 1*9 6*3 3*2 7*0 9*3 10*2 5*1 8*0 4*1 2*1=235
随後求和結果除以11得到餘數如上圖藍色區域
235/11=21餘4
也可以利用mod函數 sumproduct函數組合求出結果:=MOD(SUMPRODUCT(B2:B18,C2:C18),11)
2.求出校驗碼
每個餘數還對應了不同的校驗碼如下圖所示,上一步中我們求出的餘數為4,在這個表中我們可以看到4對應的校驗碼為8,所以身份證号碼的最後一位就是8,也可以利用vlookup函數快速地引用結果,至此我們可以說是完整的編寫完了一個身份證号碼
以上就是今天分享的關于身份證号碼的所有内容,大家可以動手做一下檢驗下自己的身份證号碼
怎麼樣?你學會了嗎?我是Excel從零到一,關注我,持續分享更多Excel技巧
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!