Vba: как удалить специальные символы из строки
Вы можете использовать следующий базовый синтаксис в 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
В этом конкретном примере заменяются следующие специальные символы в каждой строке диапазона ячеек A2:A8 и создаются новые строки в ячейках B2:B8 :
- !
- @
- #
Обратите внимание, что мы использовали три вложенных метода replace для удаления каждого из этих специальных символов из строк.
Чтобы удалить еще больше специальных символов, просто используйте больше вложенных методов replace .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Удаление специальных символов из строки с помощью VBA
Предположим, у нас есть следующий список строк в Excel:
Предположим, мы хотим удалить из каждой строки следующие специальные символы:
- !
- @
- #
Для этого мы можем создать следующий макрос:
Sub ReplaceSpecialChars()
Dim i As Integer
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
В столбце B отображаются все строки столбца A с удаленными специальными символами.
Примечание . Полную документацию по методу замены VBA можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи с помощью VBA:
VBA: как подсчитать вхождение символов в строку
VBA: как проверить, содержит ли строка другую строку
VBA: как подсчитать ячейки с определенным текстом