身份證號泄露,Excel能提取出這麼多隱私信息,太恐怖!

2.我看到部分留言里說很受用,這個我是很感動、很開心,同時,獲得了更大的信心和更足的動力,能夠真正的幫助更多的人,傳遞Excel能量,這是我建立此頭條號的初衷,第一期的時候承諾每周一三五七更新,每周四篇,但是看到了大家的需求,我承諾後面每周至少更新四篇,將Excel能量傳遞給更多更多的人;

3.同樣有部分留言提出了疑義或者反對,這個也是我更希望看到的,第一期我就說了,Excel包羅萬象,其包容性是無法用語言來描述的,這麼偉大的一個軟體,不可能是我一家之言就能定義的,大家仁者見仁智者見智,通過不同的見解碰撞出更完美的火花。

再一次,感謝各位讀者,由衷的感謝!

好了,以上是我發表第一篇文章以後的收穫,所思所想跟大家做了一個彙報。

今天的主題是利用Excel提取身份證信息,是一個全面的總結,學完以後,我敢保證大家會對自己的身份證有一個全新的認識。

首先,先簡單介紹下身份證那一串數字的具體含義,這裡的身份證指的是1999年之後使用的18位身份證

如上圖所示,18位身份證,

a.前6位是地址碼,其中前1-2位是省代碼,3-4位是市代碼,5-6是縣/區代碼;

b.7-14位是生日碼,其中7-10位是出生年代,11-12位是出生月份,13-14位是出生日;

c.15-17位是順序碼,是當地派出所根據當地孩子出生順序頒發的順序碼,男孩分配奇數,女孩分配為偶數;

d.最後1位是由號碼編製單位按統一的公式計算出來的,如果某人的尾號是0-9,都不會出現X,但如果尾號是10,那麼就得用X來代替,具體的校驗邏輯,稍後會講到。

好了,現在對身份證是不是有了一個重新的認識,下面我們就用Excel提取身份證的信息。

一、身份證號在Excel的輸入

正常輸入18位身份證,會出現如下的問題,身份證變成了科學計數法:

可以通過以下兩個方法解決這個問題

1.輸入身份證數字前先輸入單引號 "

2.將單元格格式設置為文本,再輸入身份證號

二、提取出生日期

利用--text(mid(D3,7,8),"0-00-00")公式將生出年月提取了出來,首先mid( )函數是將出生年月的8位數字提取出來,然後利用text()函數轉化為正確的格式。

在這裡說明下,函數的具體含義這裡不做具體講解,後期會有專項講解,這裡只是把函數的自學方法分享下,函數的最好的學習是利用Excel幫助文檔,比如,我需要查text()函數的使用方法,首先在任意單元格輸入"=",輸入「te」之後按Tab鍵選中該函數,用滑鼠點擊該函數即可以跳轉到幫助文檔。

三、計算歲數(周歲)

用公式=DATEDIF(E3,TODAY(),"y")將歲數計算了出來,DATEDIF函數是Excel隱藏函數,其在幫助和插入公式裡面沒有, 返回兩個日期間隔的年或月或日,常使用DATEDIF函數計算兩日期之差,具體使用方法大家可以自行百度。

四、計算性別

利用公式IF(ISODD(MID(D3,17,1)),"男","女")計算性別,mid( )函數提取第17位數字,isodd( )函數判斷奇偶數,if( )根據條件判斷男女。

五、計算退休時間(假定男60退休,女50退休)

利用EDATE(E3,MOD(MID(D3,17,1),2)*120+600)計算退休時間,其中的600代表600個月,即50年,120代表120個月,即10年,這裡的計算比較巧妙,大家好好理解一下。

五、校驗身份證的真偽

校驗身份證真偽需要使用身份證的最後一位校驗碼,校驗碼前面也說過了,由號碼編製單位按統一的公式計算出來的,計算步驟為,身份證每一位分別乘以一個固定值,然後求和,接著用這個和除以11,得到餘數,將餘數跟一個固定的對應表對應,即可以得到校驗碼。

每個數字應該乘以的固定值和餘數對應表,這些不在此列出了,大家百度即可。

好了,今天的分享就這麼多吧,大家看了肯定有點雲里霧裡,沒關係,慢慢研究,關於身份證的處理,本文介紹的很全面了,這些也是在前人基礎加上筆者整理思考總結出來的,我保證,大家如果把這邊文章都弄懂了,後面遇到任何的身份證的處理問題,都是小意思!

再次感謝大家的支持!


推薦閱讀:

決定你無知的原因是什麼?
島殤500年!中國史上鮮為人知的對外開放悲劇(圖) - 飛揚軍事 - 信息資訊 - [軍事...
為什麼他能「吃皇糧」?原來是因為命局中有這個信息!
我們玩一次「思考」眾包:我提供信息,大家交換思考
刑沖合害的信息與應用

TAG:隱私 | 恐怖 | 泄露 | 身份證 | 信息 | 身份 | Excel | 私信 |