冬去春來 自然 山水一色 天成

冬去春來 自然 山水一色 天成
冬去春來 自然 。。。。。 山水一色 天成

2014/04/09

Excel技巧-文字處理

在做 VLoopUp 工作時, 有時候你可能會遇到, 明明被查的表中有資料, 可是結果卻是查不到. 除了自動填滿時, 參照的表格位址發生平移外, 解決方法:用絶對位址, 大概是關鍵字中看不到的字元影響, 例如空白. 這時, 當然得先處理一下關鍵字. 你可以手動, 也可以用公式.
常見的是前後空白, 這時候用 =Trim(A1) 可以把字串前後空白都拿掉. 但在中間的不行.
可是, 有時候從網頁COPY下來的資料, 前後不是空白, 但也看不到, 是屬於不可列印的字元, Trim就沒用了. 那可以先用 =Len(A1) 看看字串長度, 確認問題點, 然後用 =Clean(A1) 清除.
常常你會需要切割字串, 那要用=MID(A1, 起始位置, 長度) 來做. 例如 MID("?李不四x", 2, 3)是從第2個字開始, 切3個字出來, 會得到 "李不四"
如果要的資料是固定長度, 起始位置相同, 那 MID就夠了. 但若長度不固定, 就要配合Len()了, 例如 =MID(A1, 2, Len(A1)-2)可以去頭尾字元.
若起始, 結尾的位置都不固定, 但有固定字元可以參考, 例如要用文字方法找出 "99-12-4", "100-1-25"的中間數字, 那就要用 =Find("-",A1, 起始位置). 例如 Find("-","99-12-4") 會回傳3, Find("-","99-12-4", 4) 會回傳6.
實作上, 利用中間儲存格可以較容易了解
日期(A1)起始位置結束位置
字串
99-12-436
12
100-1-2546
1
公式如下, +1, -1 的部份, 可以做一些調整, 請自行思考.
日期起始位置結束位置字串
99-12-4=FIND("-",A2)=FIND("-",A2,B2+1)=MID(A2,B2+1,C2-B2-1)
100-1-25=FIND("-",A3)=FIND("-",A3,B3+1)=MID(A3,B3+1,C3-B3-1)
當然可以在一儲存格內直接得到答案, 用巢狀公式, 只是會很長, 又不易理解, 維護, 常會浪費時間.
註: 因為是日期, 可以用其他日期的函數得到相同的結果.
字串要相連時, 用 &. ="A" & "B" 會回傳 "AB". 當然也有CONCATENATE公式可用, 不過, 不必.
取代字串, 有 Replace  跟 Substitute 兩個公式可用.
字母大小寫有 Lower, Upper, Proper可用.
數字與文字的轉換用 Text 與 Value.
處理好的文字, 若要取代原來的, 用複製, 然後在原位置貼上值, 就可以把過程的那些暫存格清空了.
voicexml 

沒有留言:

張貼留言