excel中能否用身份證號篩選出年齡大於18歲的人

2022-01-02 14:53:55 字數 5621 閱讀 2804

1樓:楊老師的秒懂課堂

可以通過在單元格中輸入excel函式計算公式,先動求出截止當前日期的年級,然後根據篩選工具來選擇年滿18週歲的人員就可以實現。具體的操作方法如下:

步驟一:開啟存有身份證資訊的excel檔案,這裡表資料主要有身份證號。,在第一個身份證後面的單元格中輸入=datedif(text(mid(a1,7,8),"0-00-00"),today(),"y"),因為身份證號無法直接與60進行比較,所以需要建立輔助列。

步驟二:然後使用滑鼠放在計算出年齡的單元格下面,拉動到底部,就可以看到自動計算出來所有人的年齡了。

步驟三:使用滑鼠選中計算出年齡的單元列表,然後點選選單欄的條件格式,在彈出的選項中選擇大於。

步驟四:然後在彈出的大於對話方塊中輸入大於18,顯示為淺紅填充色彩文字以後點選確定,就可以看到已經將年滿18週歲的人員自動標識出來了。如下圖:

2樓:躬耕皖江

可以依據身份證號碼篩選出年齡大於18歲的人。在excel中可以先使用公式將身份證號碼截止當前日期的年齡計算出來。再通過資料篩選功能選擇大於18週歲即可顯示。

具體的以excel2007為例,篩選方法如下:

1、在電腦中開啟excel2007進入。

2、在對應的單元格中輸入=datedif(text(mid(b2;7;8);"0-00-00");today();"y")。

3、輸入公式完成以後按下回車鍵即可看到計算出來的年齡。再點選右下角的單元格,下拉套用計算公式。

4、此時即可看到多個身份證號碼對應的年齡已經被計算出來了。

5、選中第一行,點選選單欄的資料,選擇篩選。

6、然後在年齡單元格中點選下拉箭頭,選擇數字篩選下面的大於按鈕。

7、在彈出的篩選對話方塊中可以輸入年齡大於18以後點選確定按鈕。

8、此時即可看到已經通過身份證號碼計算出年齡並篩選除了年齡大於18歲的人員。

3樓:戈傅香藍嬋

可以在後面插入一列,用身份證算出年齡後再篩選,否則好像就只有用vba了

4樓:

假定原身份證資料在b列,第一行為表頭,請在c2單元格輸入公式:

=if(date(if(len(b2)=15,1900+mid(b2,7,2),mid(b2,7,4)),mid(b2,if(len(b2)=15,9,11),2),mid(b2,if(len(b2)=15,11,13),2))<=date(year(today())-18,month(today()),day(today())),"是","")

將公式向下複製到相應行。

將全表按c列排序,所有c列含有「是」的行將集中在一起,這就是你要的結果。

5樓:藺玉枝簡胭

可以,但是號碼最好都是統一位數的

在第一列填身份證號

第二列第一格填

=mid(a1,7,4)

可以提取身份證號碼裡面的年份

然後第二列類似的一拉就好了

6樓:匿名使用者

=if(mid(c5,7,4)<"1989","true","false") c5為身份證號碼。1989=2007-18.小於1989的人大於18歲。

7樓:鰕虎魚

把身份證號碼自動生成生日:

假如身份證號資料在a1單元格,在b1單元格中編輯公式

計算年齡:

=datedif(b1,today(),"y")然後再篩選大於18歲的.

回覆:我這公式沒精確到日嗎?

8樓:

身份證大多數是前六位表示所在地區,從第七位開始是出生年月。我也不知道一下子篩選有什麼好辦法。不過可以把它劃分為兩個子問題。

所以可以這麼解決:首先選中身份證號一欄,按照大小排列,這樣以來同一地區的人就被排列在一起了。比如煙臺的一身份證是37140119831025××××,前六位表示地區,第七位開始19831025是出生日期。

對於這一地區的便可以用篩選小於371401198912319999的方法了。

嘿嘿,好像勉強可以算是解決了。哈哈哈!僅供參考。

excel中能否用身份證號篩選出年齡小於18歲的人?

9樓:匿名使用者

可以,不過要用輔助列,先用身份證號算出出生日期:

=--text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00")

再按此列來篩選

或直接用公式:

=text(datedif(--text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"),today(),"y")-18,"大於18;小於18;等於18")來篩選

10樓:匿名使用者

假設身份證號在a列,在b1輸入:=if(datedif(text(text(mid(a1,7,6+(len(a1)=18)*2),"#-00-00"),"e-mm-dd"),today(),"y")<18,"是","") ,選中b1向下填充公式,篩選b列中顯示「是」的行就是你要的結果。

11樓:匿名使用者

18位身份證號的話,如******####********,提取7-10個字元,也就是示例中的#。這個應該是生日年份。將今年減去該年份即可

12樓:匿名使用者

可以在後面插入一列,用身份證算出年齡後再篩選,否則好像就只有用vba了

13樓:匿名使用者

這個貌似不行,因為身份證代表年齡的數字在中間。

14樓:匿名使用者

可以,但是號碼最好都是統一位數的

在第一列填身份證號

第二列第一格填

=mid(a1,7,4)

可以提取身份證號碼裡面的年份

然後第二列類似的一拉就好了

15樓:

=2012-(mid(a2,7,4)),然後篩選小於18歲。

16樓:匿名使用者

1. =left(right(a1,12),8)

2. a1是身份證號碼

17樓:匿名使用者

=if(year(now())-if(len(a1)=15,"19"+mid(a1,7,2),mid(a1,7,4))<18,"是","否")

excel怎樣從一大堆身份證號碼中把年滿18歲的人篩選出來

18樓:躬耕皖江

可以通過在單元格中輸入excel函式計算公式,先自動求出截止當前日期的年級,然後根據篩選工具來選擇年滿18週歲的人員就可以實現了。具體的操作方法如下:

1、在電腦上開啟excel**,可以看到當前有一組身份證號碼,在第一個身份證後面的單元格中輸入=datedif(text(mid(a1,7,8),"0-00-00"),today(),"y"),表示的意思是截止今日的計算年齡。

2、然後使用滑鼠放在計算出年齡的單元格下面,拉動到底部,就可以看到自動計算出來所有人的年齡了。

3、使用滑鼠選中計算出年齡的單元列表,然後點選選單欄的條件格式,在彈出的選項中選擇大於。

4、然後在彈出的大於對話方塊中輸入大於18,顯示為淺紅填充色彩文字以後點選確定,就可以看到已經將年滿18週歲的人員自動標識出來了。

19樓:橘落淮南常成枳

可以依據身份證號碼篩選出年齡大於18歲的人。

在excel中可以先使用公式將身份證號碼截止當前日期的年齡計算出來。再通過資料篩選功能選擇大於18週歲即可顯示。具體的以excel2007為例,篩選方法如下:

1、在電腦中開啟excel2007進入。

2、在對應的單元格中輸入=datedif(text(mid(b2;7;8);"0-00-00");today();"y")。

3、輸入公式完成以後按下回車鍵即可看到計算出來的年齡。再點選右下角的單元格,下拉套用計算公式。

4、此時即可看到多個身份證號碼對應的年齡已經被計算出來了。

5、選中第一行,點選選單欄的資料,選擇篩選。

6、然後在年齡單元格中點選下拉箭頭,選擇數字篩選下面的大於按鈕。

7、在彈出的篩選對話方塊中可以輸入年齡大於18以後點選確定按鈕。

8、此時即可看到已經通過身份證號碼計算出年齡並篩選除了年齡大於18歲的人員。

20樓:魚木混豬喲

軟體版本:office2007

方法如下:

1.根據身份證號資訊,將年滿18週歲的篩選出來:

2.建立輔助列,並輸入公式如下:

=datedif(text(mid(b1,7,8),"2023年00月00日"),now(),"y")

3.然後對輔助列進行篩選,數字,大於18:

4.這樣,就將年滿18週歲的篩選出來了:

21樓:退休畫線工

這個問題可以用函式提取,也可以通過增加輔助列提取出生日期後再篩選,但最簡單快捷的方法是用條件高階篩選。如圖1,b列中有一系數身份證號碼,在d2中輸入篩選條件(d1中輸入「條件」或為空或別的內容,但不能與原資料同標題——不能是「號碼」):

=--mid(b2,7,8)<=19980927

即今天為2023年9月27日,那麼出生日期早於2023年9月27日(包括9月27日)的年滿18歲。

把游標定位到a列或b列任意資料單元格中,點資料中的「高階」,即高階篩選,excel會自動選擇資料區域,如果沒有,可手動選擇;條件區域中,選擇d1:d2;根據需要選擇是否把篩選結果複製到其他區域(圖中選擇複製到其他區域)。都設定好後,按「確定」。

excel很快就會按設定的篩選條件進行篩選,結果如圖2:

ps:圖2中,h列提取了篩選後的出生日期,可以看到,全部是2023年9月27日前出生的。因資料是隨機函式生產的,日期資料不一定合適邏輯:):)

22樓:匿名使用者

假如資料在a列

使用公式在b1單元格,=if(datedif(text(mid(a1,7,8),"#-00-00"),today(),"y")>=18,datedif(text(mid(a1,7,8),"#-00-00"),today(),"y"),"")

23樓:匿名使用者

加一個輔助列,=datedif(text(mid(a1,7,8),"#-00-00"),today(),"y")用這個公式計算出年齡,複製貼上成數值,然後篩選出大於等於18的

24樓:excel大學

輸入身份證號以後將游標定位在年齡的單元格,然後輸入函式=year(today())-mid(b2,7,4)回車鍵即可,注意,b是代表第一個身份證號所在的單元格位置,以下的函式裡的同樣意思,不管是a,還是c,都代表單元格位置。

25樓:

軟體版本:office2013

第一步:

建立輔助列,並輸入公式如下:

=datedif(text(mid(b1,7,8),"2023年00月00日"),now(),"y")

如圖所示:

第二步:輔助列進行篩選,數字,大於18。

如圖所示:

最終篩選:

excel表中有兩列身份證號 想要篩選出來不一致的

1,增加輔助列公式 為了便於說明,假設兩列身份證號分別在a b兩列1.1 請在c1 單元格輸入如下公式 if countif a a,b1 不同 向下複製。直到b列盡頭位置。當b列的身份證號碼在a列沒出現過,則對應的c列單元格顯示 不同 1.2 同理,在d1單元格輸入公式 if countif b ...

excel,表1中A列為姓名,B列為身份證號碼,表2中,A為姓名,B為身份證號碼,如果表2中資料在

123a2 index 1 a a,all if 1 a 2 a 11 1 b 2 b 11 2 a 2 a 11 2 b 2 b 11,row 1 a 2 a 11 4 8 row a1 陣列公式 向下向右複製 陣列公式,公式輸完後,游標放在公式編輯欄同時按下ctrl shift 回車鍵,使陣列公...

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 enter結束....