Vba: jak usunąć znaki specjalne z ciągu znaków
Aby usunąć znaki specjalne z ciągów znaków, możesz użyć następującej podstawowej składni w VBA:
Sub ReplaceSpecialChars()
Dim i As Integer
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub
W tym konkretnym przykładzie zastępuje następujące znaki specjalne w każdym ciągu w zakresie komórek A2:A8 i generuje nowe ciągi w komórkach B2:B8 :
- !
- @
- #
Zauważ, że użyliśmy trzech zagnieżdżonych metod Zamień , aby usunąć każdy z tych znaków specjalnych z ciągów.
Aby usunąć jeszcze więcej znaków specjalnych, po prostu użyj bardziej zagnieżdżonych metod Zamień .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Usuń znaki specjalne z ciągu za pomocą VBA
Załóżmy, że mamy następującą listę ciągów w Excelu:
Załóżmy, że chcemy usunąć następujące znaki specjalne z każdego ciągu:
- !
- @
- #
W tym celu możemy utworzyć następujące makro:
Sub ReplaceSpecialChars()
Dim i As Integer
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Kolumna B wyświetla każdy ciąg z kolumny A z usuniętymi znakami specjalnymi.
Uwaga : Pełną dokumentację metody VBA Apply znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania przy użyciu języka VBA:
VBA: Jak liczyć wystąpienia znaków w ciągu
VBA: jak sprawdzić, czy ciąg zawiera inny ciąg
VBA: Jak liczyć komórki zawierające określony tekst