亚洲综合一区成人在线,怡红院av一区二区三区,日韩国产亚洲欧美中国v http://www.k5395.cn Sun, 22 May 2022 10:38:56 +0000 zh-CN hourly 1 https://wordpress.org/?v=5.8.1 excel計(jì)算年齡函數(shù)公式(excel函數(shù)求年齡公式) http://www.k5395.cn/2578.html Sun, 22 May 2022 15:35:38 +0000 http://www.k5395.cn/?p=2578

網(wǎng)絡(luò)上介紹了許多在Excel軟件中,用身份證號碼提取年齡的公式,似乎用很簡單的公式就能計(jì)算出周歲。

但是經(jīng)過筆者的嘗試真的沒有那么簡單,用那簡單的公式計(jì)算出來的周歲往往是錯的,不準(zhǔn)確的。今天晚上我就跟身份證提取周歲的操作較了半天勁兒,碰到了各種疑難雜癥,最終經(jīng)過我的探索,得到了一些收獲,在此總結(jié)如下,供大家參考。

一,身份證號不能用于公式計(jì)算,提取信息,如何處理?

首先發(fā)現(xiàn)從其他表格中拷貝過來的身份證號出了問題,怎么辦?

在此過程中我遇到的第1個問題就是身份證號碼表面上看起來是文本,但是輸入公式后就是不能計(jì)算,這說明從其他表格身份證那一列拷貝過來的的身份證號碼本身就有問題,不是合格的,可以供excel公式計(jì)算引用的數(shù)據(jù)。經(jīng)過使用某工具檢驗(yàn),發(fā)現(xiàn)這些身份證號果然都是不合格的數(shù)據(jù)。

這可怎么辦?怎樣把這些不合規(guī)的身份證號轉(zhuǎn)換成合規(guī)的身份證號呢?想起了我的老辦法,就是先找個中介過渡一下,把它們處理成合規(guī)的數(shù)據(jù)。具體來說就是新建一篇word文檔,在word文檔中看看這些身份證號有什么格式上的問題,然后在word中利用批量查找替換的方法,去掉他們不合規(guī)的格式,把這些身份證號處理成為純粹的,合規(guī)的數(shù)據(jù)。說干就干。

1,首先新建一篇空白的word文檔,把身份證號從原始Excel表格中復(fù)制過來,以“僅粘貼文本”的方式粘貼過來。

果然就看到了問題,就是這些身份證號在格式上有貓膩兒,前后都多了許多符號。

2,使用word文檔查找替換功能,格式上的符號也能查找替換,把身份證號前后的符號全部去掉。

3,接下來該做什么呢?

就是把處理好的身份證號碼的文本轉(zhuǎn)變成一列表格,以便于復(fù)制粘貼到 Excel表格中去。

具體操作看這里:

我們終于建立了只有一列的表格,把這列數(shù)據(jù)全部選中,把這一列身份證號碼數(shù)據(jù)“復(fù)制”“粘貼”到excel表格里去,就是可以用于公式計(jì)算的合規(guī)的數(shù)據(jù)了。

由于身份證數(shù)字比較多,在往Excel單元格粘貼的時候,記得提前先把那一列設(shè)置成為純文本格式。粘貼過去的身份證號碼才沒有問題。而且在Excel單元格里粘貼數(shù)據(jù)的時候像這樣粘貼。

不是

二,得使用比較靠譜的身份證提取周歲計(jì)算公式,網(wǎng)上羅列的個別簡單的公式都是有瑕疵的,結(jié)果不準(zhǔn)確。比如這個:

在要計(jì)算年齡的單元格內(nèi)輸入YEAR(TODAY())-MID(F2,7,4),

問題在于:這個公式從身份證號碼中提取出來的只有年份的4位數(shù),這種計(jì)算方法是不準(zhǔn)確的,得到的結(jié)果只能是個概數(shù)。

因?yàn)楦鶕?jù)身份證號碼包含的出生日期判斷周歲,必須精確到出生的年月日那一天,不到那一天要減1,過了那一天(包含那一天)才是拿今年的數(shù)值減去身份證出生年的數(shù)值。

所以上面那個公式不可以用。


來自網(wǎng)絡(luò)經(jīng)過驗(yàn)證準(zhǔn)確的三個公式,保存在此,供分享和我自己學(xué)習(xí),在此感謝這些前輩。

1,=DATEDIF(IF(LEN(F2)=18,DATE(MID(F2,7,4),MID(F2,11,2),MID(F2,13,2)),IF(LEN(F2)=15,DATE("19"&MID(F2,7,2),MID(F2,9,2),MID(F2,11,2)),"")),TODAY(),"Y")

看到這個公式中包含了對身份證號碼長度的判斷,適用于包含著15位號碼的身份證號碼的計(jì)算,不過這種應(yīng)用場景應(yīng)該很少了。

2,

=IF((TODAY()-DATE(YEAR(TODAY()),MID(F2,11,2),MID(F2,13,2)))<0,(YEAR(TODAY())-MID(F2,7,4)-1),YEAR(TODAY())-MID(F2,7,4))

這是一位高人用一己之力構(gòu)造的判斷公式,包含著邏輯判斷,沒有過生日那一天,年份減1,過了生日那一天,不用減1.

3,最簡單的公式來了,就用這兩個中的一個吧。

前提是Excel版本支持。

=DATEDIF(TEXT(MID(F2,7,8),"0-00-00"),NOW(),"y")

或者=DATEDIF(TEXT(MID(B2,7,8),"0-00-00"),TODAY(),"y")

學(xué)習(xí)探索的過程很累,但是值得。

歇會兒。[啤酒]

]]>