Hallo Alban,
der VBA Editor kann leider kein Unicode. Um Deine Funktion dennoch zu verwenden, müsstest Du die nicht darstellbaren Sonderzeichen "maskieren". Hierzu kannst Du die Funktion ChrW() verwenden.
Stellt sich jedoch die Frage, wie kommt man an den Code für diese Sonderzeichen? Hier hilft Dir Google. Es gibt zahlreiche Internetseiten, die Dir den Unicode zum jeweiligen Sonderzeichen auflisten. Für die tschechischen Sonderzeichen habe ich Dir ein Beispiel-Script erstellt. Das Script gibt Dir alle tschechischen Sonderzeichen mit dem Hex- und Dezimalcode auf dem aktuellen Tabellenblatt aus:
Public Sub Table_Czech_Characters()
Dim mArr As Variant
Dim i As Long
mArr = Array("00C1", "00E1", "00C9", "00E9", "011A", "011B", "00CD", "00ED", "00D3", "00F3", _
"00DA", "00FA", "016E", "016F", "00DD", "00FD", "010C", "010D", "010E", "010F", _
"0147", "0148", "0158", "0159", "0160", "0161", "0164", "0165", "017D", "017E")
For i = LBound(mArr) To UBound(mArr)
Cells(i + 1, 1).Value = "'" & mArr(i)
Cells(i + 1, 2).Value = CLng("&H" & mArr(i))
Cells(i + 1, 3).Value = ChrW(CLng("&H" & mArr(i)))
Next i
End Sub
Deinen ursprünglichen Code musst Du also so in etwa anpassen ...
Sub Namen()
With Range("C:C", "D:D") 'Bearbeiteter Bereich
.Replace "Simoes", "Sim" & ChrW(243) & "es", LookAt:=xlPart
End With
End Sub
Das Prinzip verstanden?
LG Gerd
|