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:

VBA видаляє числа з рядка

Стовпець B відображає кожен із рядків у стовпці A з вилученими цифрами.

Наприклад:

  • 4009Енді стає Енді
  • 1540 Боб стає Бобом
  • 1500Chad09 стає Чадом
  • 1600Doug стає Doug

І так далі.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання за допомогою VBA:

VBA: як підрахувати випадки появи символів у рядку
VBA: як перевірити, чи містить рядок інший рядок
VBA: як підрахувати клітинки з певним текстом

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *