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:

VBA usuwa znaki specjalne z ciągu

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

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *