Zeichen ersetzen
18.09.2003 20:16:29
robert
"Hi Robert,
muss mich erstmal korrigieren:
Ich hatte die Sonderzeichen durch NIX ersetzt - insofern hab ich das jetzt auch mal angepasst:
Option Explicit
Sub wechseln()
Dim C As Range, Bereich As Range
Dim Awf As WorksheetFunction
Set Awf = Application.WorksheetFunction
Set Bereich = [a1:c16] 'Hier kannst du den Bereich vorgeben
With Awf
For Each C In Bereich
C = .Substitute(.Substitute(.Substitute(C, "~", "?"), "*", "?"), "+", "?")
Next C
End With
End Sub
Hier werden die Sonderzeichen "~", "*" und "+" durch ein "?" ersetzt - und zwar jetzt im Bereich A1:C16.
Kurz zum Code (aber wirklich nur kurz;-))
Der zu bearbeitende Zellbereich wird in der Variable "Bereich" gespeichert.
Mit "For each C in Bereich" wird jede einzelne Zelle (dafür steht das C) im Bereich "abgearbeitet".
Der neue Eintrag einer jeden Zelle (C) ergibt sich dann dadurch, dass die "Application.WorksheetFunction.Substitute" in verschachtelter Form die einzelnen Sonderzeichen durch ein "?" ersetzt. Substitute ist die englische Funktionsbezeichnung für die Excelfunktion "WECHSELN".
Und da ich keine Lust habe, jedes mal "Application.WorksheetFunction" vor jedes Substitute zu schreiben, pack ich das noch in die Variable "Awf" und arbeite dann mit der "With-Anweisung". Näheres dazu findest du in der VBA-Hilfe.
Grüße Boris