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:
Припустімо, ми хочемо видалити цифри з кожного рядка в стовпці Employee ID .
Для цього ми можемо створити таку функцію у 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:
Стовпець B відображає кожен із рядків у стовпці A з вилученими цифрами.
Наприклад:
- 4009Енді стає Енді
- 1540 Боб стає Бобом
- 1500Chad09 стає Чадом
- 1600Doug стає Doug
І так далі.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання за допомогою VBA:
VBA: як підрахувати випадки появи символів у рядку
VBA: як перевірити, чи містить рядок інший рядок
VBA: як підрахувати клітинки з певним текстом