Vba: как удалить числа из строки


Вы можете создать следующую функцию в VBA для удаления чисел из строки в ячейке Excel:

 Function RemoveNumbers(CellText As String) As String

With CreateObject(" VBScript.RegExp ")
    .Global = True
    .Pattern = " [0-9] "
    RemoveNumbers = .Replace(CellText, "")
End With

End Function

Затем вы можете использовать эту функцию для удаления чисел из любой ячейки Excel.

В следующем примере показано, как использовать эту функцию на практике.

Пример. Удаление чисел из строки с помощью VBA

Предположим, у нас есть следующий список идентификаторов сотрудников в Excel:

Допустим, мы хотим удалить цифры из каждой строки в столбце «Идентификатор сотрудника» .

Для этого мы можем создать следующую функцию в VBA:

 Function RemoveNumbers(CellText As String) As String

With CreateObject(" VBScript.RegExp ")
    .Global = True
    .Pattern = " [0-9] "
    RemoveNumbers = .Replace(CellText, "")
End With

End Function

Создав эту функцию, мы можем ввести следующую формулу в ячейку B2 , чтобы вернуть номер сотрудника в ячейке A2 со всеми удаленными цифрами:

 =RemoveNumbers( A2 )

Затем мы можем щелкнуть и перетащить эту формулу в каждую оставшуюся ячейку в столбце B:

VBA удаляет числа из строки

В столбце B отображаются все строки столбца A с удаленными цифрами.

Например:

  • 4009Энди становится Энди
  • 1540Боб становится Бобом
  • 1500Chad09 становится Чадом
  • 1600Даг становится Дугом

И так далее.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи с помощью VBA:

VBA: как подсчитать вхождение символов в строку
VBA: как проверить, содержит ли строка другую строку
VBA: как подсчитать ячейки с определенным текстом

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *