Sonderzeichen in Excel in Umlaute ändern per Makro
Anhand des folgenden Makros ist es möglich, Sonderzeichen, die eigentlich für Umlaute stehen sollen, durch entsprechende Umlaute zu ersetzten. Hierbei kamen die Sonderzeichen aufgrund eines Importes (DBF-Datei) zustande:
Da der VB-Editor nicht alle Sonderzeichen kannte, bzw. darstellen konnte, mußten die letzten drei zunächst ermittelt werden:
Die Sonderzeichen habe ich im Direktfenster des VB-Editors durch folgende Eingabe ermittelt:
? StrConv(Range("A1"), vbUnicode)
Nun das Makro:
Sub Umlaute
Selection.Copy
Cells.Replace What:="÷", Replacement:="ö", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="³", Replacement:="ü", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="õ", Replacement:="ä", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="Í", Replacement:="Ö", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv("€%", vbFromUnicode), Replacement:="ß", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv(""%", vbFromUnicode), Replacement:="Ü", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv(Chr$(0) + "%", vbFromUnicode), Replacement:="Ä", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
End Sub
Da der VB-Editor nicht alle Sonderzeichen kannte, bzw. darstellen konnte, mußten die letzten drei zunächst ermittelt werden:
Die Sonderzeichen habe ich im Direktfenster des VB-Editors durch folgende Eingabe ermittelt:
? StrConv(Range("A1"), vbUnicode)
Nun das Makro:
Sub Umlaute
Selection.Copy
Cells.Replace What:="÷", Replacement:="ö", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="³", Replacement:="ü", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="õ", Replacement:="ä", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:="Í", Replacement:="Ö", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv("€%", vbFromUnicode), Replacement:="ß", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv(""%", vbFromUnicode), Replacement:="Ü", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
Selection.Copy
Cells.Replace What:=StrConv(Chr$(0) + "%", vbFromUnicode), Replacement:="Ä", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False
End Sub
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 53217
Url: https://administrator.de/contentid/53217
Ausgedruckt am: 24.11.2024 um 00:11 Uhr
1 Kommentar
Ich hab's mal als Tutorial/Anleitung gekennzeichnet
Lonesome Walker
Lonesome Walker