二 讓你從菜鳥成為Excel高手知道的都在這里了( 三 )




上圖中 , 兩種顏色的數據長度是不一致的 , 但利用公式 , 我們很簡單的把生日數據截出來了 。 公式“=IF(LEN(A2)=15,"19"&MID(A2,7,6),MID(A2,7,8))”中 , 我們利用IF函數 , 用Len函數對A2的長度進行判斷 , 如果等于15 , 則返回“"19"&MID(A2,7,6)” , 表示如果為15位的身份證號碼 , 就在其之前補上“19”(注:“&”符號在Excel中 , 用來把兩個數據合并在一起) , 然后對A2單元格中的數據從第7位開始 , 截6位出來 , 合在一起剛好8位 。 如果不是15位 , 則返回“MID(A2,7,8))” , 表示直接在A2單元格的數據中 , 從第7位開始 , 截取8位出來 。 做完第一個公式后 , 不管下面還有幾千或幾萬個數據 , 一拖到底即可 。

對于要求比較簡單的用戶 , 得到這個結果己經夠用了 。 但實際上 , 這個取出來的數據 , 并不是日期格式的 。 因此 , 就無法像對待日期那樣處理它 , 如更改日期格式 , 或設置條件格式化 , 讓當天為生日的數據顯示為紅色等 。

要讓其變為日期 , 其實也是很簡單 。 只是其中一招我們還未介紹-Datevalue , 同時 , 取出的數據 , 也需額外加上分隔符 , 讓系統識別 。 我先把公式列在這里 , 有興趣的用戶可以試試 。

=DATEVALUE(IF(LEN(A2)=15,"19"&MID(A2,7,2)&"-"&MID(A2,9,2)&"-"&MID(A2,11,2),MID(A2,7,4)&"-"&MID(A2,11,2)&"-"&MID(A2,13,2)))

記?。汗降贸龅慕Y果 , 是一個時間序列號 , 日期格式你們可自行設置 。 下圖中 , C3及C5單元格的“30720 , 30034”就是因沒設置日期格式而直接顯示序列值 。


二 讓你從菜鳥成為Excel高手知道的都在這里了

文章插圖


下面我們再來看一個使用了“瞎子摸象”函數的例子 。

假如有這樣一串數據 , 格式類似Bill Gates (****) Bill.Gates@hotmail.com或Charles Peng (****) Charles.Peng@sqtong.com , 我們需要取出其中的郵件地址部分 。 因為其郵件地址時長時短 , 因此 , 無法直接截取 , 單用Len函數也無法實現 。 但根據觀查發現 , 郵件地址起始于“)”后 , 因此我們可以利用“瞎子摸象”Find函數 , 先定出每個數據中的“)”位置 , 再用Len量出整個數據長度 , 相減之后 , 就是郵件地址的長度 , 這樣 , 用“去頭留尾”函數就可將需要的數據取出 。 公式為:=RIGHT(A2,LEN(A2)-FIND(")",A2)) 。


二 讓你從菜鳥成為Excel高手知道的都在這里了

文章插圖

上圖中 , 對含有不同地方的數據 , 利用“Left”函數 , 非常簡單分離出了他們的省份 。

詳細解釋

公式“=Left(A2,3)”中A2表示要截取的數據為A2單元格的內容“廣東省東莞市東城區…” , “3”表示從第一位開始 , 共截取3個字符 , 因此系統返回“廣東省” 。

推薦閱讀