Vba: jak usunąć pierwszy znak z ciągu
Możesz użyć następującej podstawowej składni, aby usunąć pierwszy znak z ciągu za pomocą VBA:
Sub RemoveFirstChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Right(myString, Len(myString) - 1)
Next i
End Sub
Ten konkretny przykład usuwa pierwszy znak z każdego ciągu w zakresie A2:A11 i wyświetla wyniki w zakresie B2:B11 .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Powiązane: Jak usunąć ostatni znak z ciągu za pomocą VBA
Przykład: użycie VBA do usunięcia pierwszego znaku z ciągów
Załóżmy, że mamy w Excelu następującą listę nazw drużyn koszykarskich:
Załóżmy, że chcemy usunąć pierwszy znak z nazwy każdego zespołu.
W tym celu możemy utworzyć następujące makro:
Sub RemoveFirstChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Right(myString, Len(myString) - 1)
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ętym pierwszym znakiem.
Jeśli zamiast tego chcesz usunąć pierwszych n znaków z ciągu, po prostu zamień 1 w metodzie Right na inną liczbę.
Na przykład możemy utworzyć następujące makro, aby usunąć pierwsze 2 znaki z ciągu:
Sub RemoveFirstTwoChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Left(myString, Len(myString) - 2)
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 dwoma pierwszymi znakami.
Uwaga : Pełną dokumentację metody VBA Right 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