2015-05-12 35 views
0

在我的excel工作簿中有這個「 」特殊字符,我想用「。」替換全部,當我將這個 字符放在代碼中時,它會變成「? 「在我運行宏之後,它將所有內容都替換爲「。」。如何用excel替換特殊字符vba

Sub FindReplaceAll() 

Dim ws  As Worksheet 
For Each ws In ActiveWorkbook.Worksheets 
    ws.Cells.Replace What:="�", Replacement:=".", LookAt:= _ 
    xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ 
    ReplaceFormat:=False 

     Next ws 
End Sub 

在此先感謝

+0

聽起來像一個編碼問題。該圖標代表無法在您的機器上顯示的任意數量的字符。 – NinjaCat

+0

[Unicode替換字符](https://en.wikipedia.org/wiki/Specials_(Unicode_block)) – Porcupine911

+0

如果可以,請返回並找到 進入工作簿的原因。它代表由於錯誤的字符編碼轉換造成的數據丟失。 –

回答

0

嘗試這個角色由小區中的ASCII NUM複製,然後有ASCII數和替換的字符:

Dim num =123 
Ex: 
    Cells.Replace What:=Chr(Num), Replacement:=".", LookAt:= _ 
     xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ 
     ReplaceFormat:=False