我需要在Excel電子表格中將純ASCII替換爲Unicode字符。例如將Ståle轉換爲Stale。顯示Unicode字符:Excel 2010 vs Excel 2013
下面在Excel 2013中正常工作。但在Excel 2010中,「?」顯示而不是有問題的字符。有任何想法嗎?請注意,Excel 2010中正確檢測到非Ascii字符,但不顯示字符。
char = Mid(val, i, 1)
char_code = AscW(char)
If char_code > 127 Then
MsgBox ("Problem with " & c.Address & " [" & char_code & "] " &
StrConv(ChrW(char_code), vbUnicode))
End If
我也嘗試了
MsgBox ("Problem with " & char & " " & ChrW(char_code))
它再次與Excel 2013工作,但不是Excel 2010中
也許作爲一個選項,這將是好的:http://www.asap-utilities.com/asap-utilities-excel-tools-tip.php?tip = 236&utilities = 78&lang = en_us – 2013-02-18 10:25:08
StrConv依賴於默認代碼頁。我假設你在不同的計算機上嘗試這種方法。使用Excel 2010的計算機是否具有正確的代碼頁?將char_code轉換爲十六進制是更好的選擇嗎? – 2013-02-18 11:57:51