Vba: как удалить последний символ из строки
Вы можете использовать следующий базовый синтаксис для удаления последнего символа из строки с помощью 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
В этом конкретном примере удаляется последний символ из каждой строки в диапазоне A2:A11 и отображаются результаты в диапазоне B2:B11 .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Использование VBA для удаления последнего символа из строк
Предположим, у нас есть следующий список названий баскетбольных команд в Excel:
Допустим, мы хотим удалить последний символ из названия каждой команды.
Для этого мы можем создать следующий макрос:
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
Когда мы запускаем этот макрос, мы получаем следующий вывод:
В столбце B отображаются все строки столбца A с удаленным последним символом.
Если вместо этого вы хотите удалить последние n символов из строки, просто замените 1 в методе Left другим числом.
Например, мы можем создать следующий макрос для удаления последних двух символов из строки:
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
Когда мы запускаем этот макрос, мы получаем следующий вывод:
В столбце B отображаются все строки столбца A с удаленными двумя последними символами.
Примечание . Полную документацию по методу VBA Left можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи с помощью VBA:
VBA: как подсчитать вхождение символов в строку
VBA: как проверить, содержит ли строка другую строку
VBA: как подсчитать ячейки с определенным текстом