Vba: hoe het laatste teken uit een string te verwijderen
U kunt de volgende basissyntaxis gebruiken om het laatste teken uit een tekenreeks te verwijderen met behulp van VBA:
Sub RemoveLastChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Left(myString, Len(myString) - 1)
Next i
End Sub
Dit specifieke voorbeeld verwijdert het laatste teken uit elke tekenreeks in het bereik A2:A11 en geeft de resultaten weer in het bereik B2:B11 .
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: VBA gebruiken om het laatste teken uit tekenreeksen te verwijderen
Stel dat we de volgende lijst met basketbalteamnamen in Excel hebben:
Stel dat we het laatste teken van elke teamnaam willen verwijderen.
We kunnen hiervoor de volgende macro maken:
Sub RemoveLastChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Left(myString, Len(myString) - 1)
Next i
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Kolom B toont elk van de tekenreeksen in kolom A, waarbij het laatste teken is verwijderd.
Als u in plaats daarvan de laatste n tekens uit een reeks wilt verwijderen, vervangt u eenvoudigweg de 1 in de methode Links door een ander getal.
We kunnen bijvoorbeeld de volgende macro maken om de laatste 2 tekens uit een string te verwijderen:
Sub RemoveLastTwoChar()
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
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Kolom B toont elk van de tekenreeksen in kolom A, waarbij de laatste twee tekens zijn verwijderd.
Opmerking : u kunt hier de volledige documentatie voor de VBA Left- methode vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken kunt uitvoeren met VBA:
VBA: het aantal tekens in een string tellen
VBA: hoe controleer je of een string een andere string bevat?
VBA: cellen tellen met specifieke tekst