大家好,今天跟大家分享的是一個身份證号的案例。
大家都知道身份證号是唯一的,而且身份證号可以提供多種信息,今天我們就根據身份證号,提取出出生年月,性别這兩項簡單的。
目前身份證号碼都是18位,這18位代表的含義為:前6位表示地區;第7位到第14位表示出生日期;第15位到第17位表示一個順序号;其中第17位,奇數為男性,偶數為女性;第18位為校驗碼。
然後大家來看案例(案例中的身份證号是我用公式随機生成的,隻考慮了中間出生的日期是正确的格式,前面的地址和校驗碼都沒有考慮=。=,反正就是給大家看個例子)
一、出生年月
首先我們來提取出出生年月。
身份證号碼第7位到第14位表示出生日期,所以就要提取出身份證号碼的這8位即可。
一個函數,mid。
MID(text, start_num, num_chars) mid(文本,從第幾個開始截取,截取幾個字符)
所以公式就是=mid(C2,7,8)
這時候我們來看一下結果
雖然已經是八位數的字符串,但是不是我們想要的時間格式,所以就需要用text來變成時間格式
TEXT(MID(C2,7,8),"0000-00-00")
這時候,日期就變成這樣的格式,但是此時本質還是文本。如果想變成真正的日期格式,那公式需要改為 (其實這一步驟公式也很多,我隻是随便選取了一個)
DATE(MID(C2,7,4),MID(C2,11,2),MID(C2,13,2))
這個公式屬于時間公式,今天就不做分享了。
如果用這個公式,會将結果變為真正的日期格式,可以通過設置單元格格式來改變樣式。可以通過動圖看一下這種格式的區别。
二、性别
身份證号的第17位号碼代表性别,奇數代表男,偶數代表女。
第一步先提取第17位數字
然後判斷奇偶性。判斷奇偶性在excel中非常多的方法,今天主要分享mod
mod(被除數,除數) 結果返回一個餘數
比如:mod(2,1)=2÷1 =2餘0 所以返回值是0
mod(3,2)=3÷2=1餘1 所以返回值是1
這時候可以想到奇數與偶數的區别就是偶數可以被2整除,但是奇數不能
可以看一下現在的結果。
下面我們就需要把0的都顯示為女,1的顯示為男。
就用到了if函數。
if(條件,條件為真的時候顯示值,條件為假的時候顯示值)
if(E2=0,"女","男") 這樣就可以把0,1變為性别“女”和“男”
把所有的公式都嵌套在一起,得到最終公式
=if(mod(mid(b2,17,1),2)=0,"女","男")
如果您有任何關于excel的問題都可以留言或者私信我們,遇到系統開發,vba編程,建模、表格設計等問題,也可以點擊後方的廣告,找我們一對一定制哦!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!