-
1 # dhfzt26749
-
2 # 石頭鍾
在excel中自動推測出生年月日及性別的技巧
大家都知道,身份證號碼已經包含了每個人的出生年月日及性別等方面的資訊(對於老式的15位身份證而言,7-12位即個人的出生年月日,而最後一位奇數或偶數則分別表示男性或女性。如某人的身份證號碼為420400700101001,它的7-12位為700101,這就表示該人是1970年元月1日出生的,身份證的最後一位為奇數1,這就表示該人為男性;對於新式的18位身份證而言,7-14位代表個人的出身年月日,而倒數第二位的奇數或偶數則分別表示男性或女性)。根據身份證號碼的這些排列規律,結合excel的有關函式,我們就能實現利用身份證號碼自動輸入出生年月日及性別等資訊的目的,減輕日常輸入的工作量。
excel中提供了一個名為mid的函式,其作用就是返回文字串中從指定位置開始特定數目的字元,該數目由使用者指定(另有一個名為midb的函式,其作用與mid完全一樣,不過mid僅適用於單位元組文字,而midb函式則可用於漢字等雙位元組字元),利用該功能我們就能從身份證號碼中分別取出個人的出生年份、月份及日期,然後再加以適當的合併處理即可得出個人的出生年月日資訊。
提示:mid函式的格式為mid(text,start_num,num_chars)或midb(text,start_num,num_bytes),其中text是包含要提取字元的文字串;start_num是文字中要提取的第一個字元的位置(文字中第一個字元的start_num為1,第二個為2……以此類推);至於num_chars則是指定希望mid從文字中返回字元的個數。
假定某單位人員管理希望透過身份證號碼自動得出員工的出生年月日及性別,現以此為例,將有關步驟向廣大使用者作一簡要介紹:
1.選中整個b列,然後執行“格式”選單中的“單元格”命令,開啟“單元格格式”視窗。
2.選擇“數字”選項卡。
4.將游標移至c3單元格中,然後輸入“="19"&mid(b3,7,2)&"年"&mid(b3,9,2)&"月"&mid(b3,11,2)&"日"”內容。其中mid(b3,7,2)就是從身份證號碼的第7位開始取2位數,得出該員工的出生年份,mid(b3,9,2)就是得出該員工的出生月份,而mid(b3,11,2)則是該員工的出生日期,這些資訊再加上年、月、日等文字就會組成該員工的準確出生年月日“1970年1月1日”。
5.接下來我們應將游標移至d3單元格中,然後輸入“=if(mid(b3,15,1)/2=trunc(mid(b3,15,1)/2),"女","男")”。這就表示取身份證號碼的第15位數,若能被2整除,這表明該員工為女性,否則為男性。
6.最後我們只需利用自動填充功能對其他各個員工的出生年月日、性別進行填充即可。
上面都是以15位身份證為例進行介紹的,18位身份證的操作方法與此類似,廣大使用者若使用的是18位身份證,只需對有關函式的取值位置進行適當調整即可(如將“="19"&mid(b3,7,2)&"年"&mid(b3,9,2)&"月"&mid(b3,11,2)&"日"”修改為“=mid(b3,7,4)&"年"&mid(b3,11,2)&"月"&mid(b3,13,2)&"日"”)。
這樣就實現了由excel自動填充員工出生年月日、性別的功能,從而極大地減輕了使用者錄入資料時的工作量,有興趣的讀者不妨一試。
回覆列表
假設身份證在a1,在要得到出生年月日的單元格里輸入:=DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2))向下填充就可以。如果只要年月=DATE(MID(A1,7,4),MID(A1,11,2))向下填充就可以。