1樓:姜楠
你好,我做好了。考慮了新老身份證號碼的位數差別兩種情況,請您試一下吧。
現在假設a列輸入身份證號碼,b列顯示性別,c列顯示出生日期,d列顯示年齡。
在b2格內輸入「=if(mod(right(a2,1),2),"男","女")」
在c2格內輸入身份證格式錯誤"))」
在d2格內輸入「=year(today())-left(c2,4)」
具體請見附圖。
2樓:瀟湘客
你首先得建立一個身份證與姓名等相關聯的表單(全部人員,資料庫?),然後再輸入你要尋找的身份證號碼,最後用vlookup函式搞定。
3樓:匿名使用者
資料在a1
在b1輸入
=if(mod(mid(a1,15+(len(a1)=18)*2,1),2),"男","女")
c1輸入
=if(or(len(a1)=15,len(a1)=18),right(if(if(len(a1)=15,mid(a1,9,2),mid(a1,11,2))*100+if(len(a1)=15,mid(a1,11,2),mid(a1,13,2))>month(today())*100+day(today()),year(today())-if(len(a1)=15,mid(a1,7,2),mid(a1,9,2))-1,year(today())-if(len(a1)=15,mid(a1,7,2),mid(a1,9,2))),2),"證號錯誤")
在d1輸入
=if(len(a1)=18,if(isblank(a1),"",concatenate(mid(a1,7,4),"年",mid(a1,11,2),"月",mid(a1,13,2),"日")),if(isblank(a1),"",concatenate("19",mid(a1,7,2),"年",mid(a1,9,2),"月",mid(a1,11,2),"日")))
分別是姓別,年齡及出生年月日
4樓:小矇
15位和18位的身份證號都合適的了。設內容如下:
........a列......b列......c列......d列....
1 身份證號 性別 出生年月 年齡
2(輸入身份證號)
算年齡的:「=if(or(len(a2)=15,len(a2)=18),right(if(if(len(a2)=15,mid(a2,9,2),mid(a2,11,2))*100+if(len(a2)=15,mid(a2,11,2),mid(a2,13,2))>month(today())*100+day(today()),year(today())-if(len(a2)=15,mid(a2,7,2),mid(a2,9,2))-1,year(today())-if(len(a2)=15,mid(a2,7,2),mid(a2,9,2))),2),"證號錯誤")」
算性別的:「=if(len(a2)=15,(if(or(abs(right(a2))=1,abs(right(a2))=3,abs(right(a2))=5,abs(right(a2))=7,abs(right(a2))=9),"男","女")),(if(or(abs(mid(a2,17,1))=1,abs(mid(a2,17,1))=3,abs(mid(a2,17,1))=5,abs(mid(a2,17,1))=7,abs(mid(a2,17,1))=9),"男","女")))」
算出生年月的:「=date(if(len(a2)=15,mid(a2,7,2),mid(a2,9,2)),if(len(a2)=15,mid(a2,9,2),mid(a2,11,2)),if(len(a2)=15,mid(a2,11,2),mid(a2,13,2)))」
只要把輸入身份證號的單元格格式設為「文字」就是最關鍵的,準確。
5樓:匿名使用者
假如:a1輸入身份證號碼、b1顯示性別、c1顯示出生日期、d1顯示週歲。
需要設定:a1單元格為文字格式、b1和d1為常規格式、c1為日期格式。
1、顯示性別:
b1輸入公式:
=if(a1="","",if(and(len(a1)<>15,len(a1)<>18),"錯誤",if(iserror(1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"))),"錯誤",if(or((1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00")))today()),"錯誤",if(mod(mid(a1,15+(len(a1)=18)*2,1),2)=0,"女","男")))))
2、c1輸入公式:
=if(a1="","",if(and(len(a1)<>15,len(a1)<>18),"錯誤",if(iserror(1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"))),"錯誤",if(or((1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00")))today()),"錯誤",value(text(mid(a1,7,6+(len(a1)=18)*2),"#年00月00日"))))))
3、d1輸入公式:
=if(iserror(1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"))),"錯誤",if(or((1*(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00")))today()),"錯誤",datedif(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"),today(),"y")))
滿足你的要求了
怎麼能在excel中輸入身份證號碼自動顯示年齡、性別、出生日期?
6樓:匿名使用者
a1單元格為身份證號碼,公式如下:
年齡:=datedif(text(mid(a1,7,len(a1)/2-1),"0-00-00"),today(),"y")
性別:=if(len(a1)=18,if(mod(mid(a1,len(a1)-(len(a1)=18),1),2),"男","女"),if(len(a1)=15,if(mod(mid(a1,len(a1)-(len(a1)=15),1),2),"男","女"),"身份證號碼錯誤"))
出生日期:
身份證號碼錯誤"))
以上三個公式同時適用於15位和18位的身份證號碼。
在**中,輸入身份證後怎樣自動出來出生年月日和性別?
7樓:匿名使用者
在excel中根據身份證號碼自動生成性別、出生日期和年齡
【身份證號判斷性別的方法】 18位的看倒數第二位,奇男偶女; 15位的看倒數第一位,奇男偶女。
在excel中根據身份證號碼自動生成出生生日期和性別 下文說明以本圖例為例,即「性別在b列,年齡在c列,出生日期在d列,身份證號碼在e列」 新建的excel表是常規格式,但身份證列應設定為文字格式
根據身份證號碼自動生成性別:
方法一: 在e列輸入身份證號,在b列填寫性別,可以在b2單元格中輸入公式 「=if(mod(if(len(e2)=15,mid(e2,15,1),mid(e2,17,1)),2)=1,"男","女")」,其中: len(e2)=15:
檢查身份證號碼的長度是否是15位。 mid(e2,15,1):如果身份證號碼的長度是15位,那麼提取第15位的數字。
mid(e2,17,1):如果身份證號碼的長度不是15位,即18位身份證號碼,那麼應該提取第17位的數字。 mod(if(len(e2)=15,mid(e2,15,1),mid(e2,17,1)),2):
用於得到給出數字除以指定數字後的餘數,本例表示對提出來的數值除以2以後所得到的餘數。 if(mod(if(len(e2)=15,mid(e2,15,1),mid(e2,17,1)),2)=1,"男","女"):如果除以2以後的餘數是1,那麼 excel學習教程excel介紹excel教程excel**excel函式excel圖表b2單元格顯示為「男」,否則顯示為「女」。
15位身份證,看最後一位,奇男偶女;18位的,看第17位數,也是奇男偶女。
方法二: 如果你是想在excel**中,從輸入的身份證號碼內讓系統自動提取性別,可以輸入以下公式: =if(len(e2)=15,if(mod(mid(e2,15,1),2)=1,"男","女"),if(mod(mid(e2,17,1),2)=1,"男","女")) 公式內的「e2」代表的是輸入身份證號碼的單元格。
根據身份證號碼自動生成出生日期
格式一: 18位身份證號:410881197906055521 輸出出生日期1979/06/05 =concatenate(mid(e2,7,4),"/",mid(e2,11,2),"/",mid(e2,13,2)) 15位身份證號:
410881790605552 輸出出生日期1979/06/05 =concatenate("19",mid(e6,7,2),"/",mid(e6,9,2),"/",mid(e6,11,2)) 公式解釋: a. mid(e6,7,2)為在身份證號碼中獲取表示年份的數字的字串 b.
mid(e6,9,2) 為在身份證號碼中獲取表示月份的數字的字串 c. mid(e6,11,2) 為在身份證號碼中獲取表示日期的數字的字串 d. concatenate("19",mid(e6,7,2),"/",mid(e6,9,2),"/",mid(e6,11,2))目的就是將多個字串合併在一起顯示。
格式二: 15位身份證號:410881790605552 出生日期790605 =if(len(e6)=15,mid(e6,7,6),mid(e6,9,6)) 18位身份證號:
410881197906055521 出生日期790605 =if(len(e2)=15,mid(e2,7,6),mid(e2,9,6)) 公式解釋: len(e6)=15:檢查e6單元格中字串的字元數目,本例的含義是檢查身份證號碼的長度是否是15位。
mid(e6,7,6):從e2單元格中字串的第7位開始提取6位數字,本例中表示提取15位身份證號碼的第7、8、9、10、11、12位數字。 mid(e6,9,6):
從c2單元格中字串的第9位開始提取6位數字,本例中表示提取18位身份證號碼的第9、10、11、12、13、14位數字。 =if(len(e2)=15,mid(e2,7,6),mid(e2,9,6)):if是一個邏輯判斷函式,表示如果額e2單元格是15位,則提取第7位開始的6位數字,如果不是15位則提取自第9位開始的6位數字。
根據出生日期計算年齡
d行為出生日期列,雙擊年齡所在列的第二行,然後輸入下面公式,然後按enter鍵;再利用下拉方式將公式複製到該列的其他行中即可 =year(now())-year(d3)
excel中從身份證號提取籍貫,Excel中從身份證號提取籍貫
人人哦哦哦課 1 我們開啟一個excel 這裡我隨便填寫了3個身份證號碼,我虛構的,作為例子。2 我們在b1單元格中輸入公式 mid a1,7,4 年 mid a1,11,2 月 mid a1,13,2 日 3 接著我們按下回車,這時候b1單元格就有了出生日期5 最後我們將游標放在b1單元格右下角,...
EXCEL中如何統計同身份證號對應的多條工資額的求和問題
紅山人 假定原表為sheet1,資料從a2 c2,統計結果在sheet2.資料也在a2 c2.這樣,可以在sheet2的c2裡輸入公式 sum if sheet1 b 2 b n b2,sheet1 c 2 c n 公式中的n為資料表裡最後一行的行號.公式輸入完後,要用ctrl shift ente...
excel中知道身份證號如何計算年齡
社會頂呱呱 1 可以用year函式來取得當前的年份 year now 2 18位身份證號從第7位開始的8位數字代表出生日期。出生的年份是從第7位開始的4位數字,用mid函式將出生年份提取出來 3 mid是visualbasic和microsoftexcel中的一個字串函式,作用是從一個字串中擷取出指...