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 на інше число.
Наприклад, ми можемо створити такий макрос, щоб видалити останні 2 символи з рядка:
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: як підрахувати клітинки з певним текстом