如果你要提取Excel單元格中的日期,很可能會遇到日期格式不對,甚至是無論如何設置日期格式,結果還是不對。
下面給你舉個例子並給出解決的方案。
假設A列,保存的是部分員工的身份證號碼,當然,在A列中,也就保存了員工的出身日期。
假如A1中的身份證號碼是:532621195701086015
首先說明,A列的數據格式為常規,就是常規,不允許改變格式。
之後,當你試圖將A1中的身份證號碼中的出生日期截取後放在B1時,那麼,我們其實可以使用函數來截取,一般,使用MID函數最為妥當了。
公式自然就是如下的公式:
=Mid(A1,7,8)
然而,我們得到的結果卻是:19570108
或許,你會馬上意識到,是B1單元格中的數據格式不對,自然,格式有問題,當你把B列的數據格式都設置為日期格式中的“2001-3-14”時,你會驚奇的發現,結果還是一樣。
到此,本人還提醒閣下一句,你可以再設置C列為“2001-3-14”的日期格式,然後把B1中的數據復制了以後,使用選擇性粘貼的辦法,粘貼到C列,那麼我告訴你,結果還是一樣,仍然是19570108
那麼,是什麼導致這種問題的產生呢,又如何來解決這種問題呢?
第一,是單元格的數據類型的問題,首先將其設置為“2001-3-14”的日期格式,是沒有問題的,但是這一步,您必須做。
第二,問題出在公式有問題,結果上述的公式從理論上來講,是沒有問題的。
但是,問題卻出在截取出生日期的時候,其截取方式有問題,使用如下的公式,問題就可以得到全面解決:
=DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2))
上述所得到的出生日期數據,其格式為2001-3-14,並且,未考慮單元格的前後是否有空格。
如果單元格的前後有空格的話,上述公式就難以得到正確的結果了,而是使用如下的公式較為妥當。
=DATE(MID(TRIM(A1),7,4),MID(TRIM(A1),11,2),MID(TRIM(A1),13,2))