今天被網友差點問倒,有人問了我要怎麼將全形文字都變成半形,這個倒是簡單,有函數就能簡單達成,但後面追問了我,那如果他是英數混合內容,但只有數字要變成半形怎麼辦?我思維了半天在想怎麼做,最後好不容易解了出來,這還真的沒有比較簡單的做法,到底要怎麼做呢?往下就來分享今天的 Excel 教學吧,真的蠻難的…

Excel 教學 – 全形文字變半形

如果需要下載範例檔練習請參考:下載範例教學

來,說明一下,最基本的課題像這樣,全形文字,要怎麼轉成半形,我們往下來看。

Excel 教學 - 全形文字變半形,如果英數混合又該怎麼分開變? 01 4

要轉成半形非常之簡單,只要利用 ASC 這個函數,比如像是 A2 的文字,公式如下:

=ASC(A2)

這樣就搞定了,是不是很簡單,不過真正難的來了,再往下來看看我差點被問倒的。

Excel 教學 - 全形文字變半形,如果英數混合又該怎麼分開變? 02 2

要怎麼把英數混合內容變成半形?這我真的想了很久要怎麼做,最後弄了一個比較土法練鋼的公式串,如下:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,”0”,”0″),”1”,”1″),”2”,”2″),”3”,”3″),”4”,”4″),”5”,”5″),”6”,”6″),”7”,”7″),”8”,”8″),”9”,”9″)

我原本是想要思維著,將文字全拆開後,再各字轉成半形再合併,但這樣好像有點麻煩,還要列陣還要好幾層疊一疊,後來我覺得單純用 SUBSTITUTE 這個函數來做,這函數的公用是取代文字串裡的內容,雖然公式看起來很長,不過這重點就是每個字串做十次,從 0 取代到 9,稍微土法鍊鋼一點,但結論來說是完美的。

但如果你是想要單純取代掉英文變成半形,那我就攤手了,如果用上面這方式,不是不行,只是就是 26 個字母大小寫加起來你總共要寫 52 層的公式,應該會死掉啊….

Excel 教學 - 全形文字變半形,如果英數混合又該怎麼分開變? 03 2

Last Update: 2023 年 10 月 31 日