UDF для извлечения только числа из ячейки с помощью VBA в Microsoft Excel

В этой статье мы узнаем, как использовать код VBA для извлечения числа только из ячейки с пользовательской функцией.

Вопрос): мне нужен макрос для получения числа только из ячейки, содержащей буквенно-цифровые данные.

Ниже приведен снимок данных, в котором столбец A содержит буквенно-цифровые данные, а ожидаемые числа находятся в столбце B

img1

Чтобы получить только числа из столбца A; нам нужно выполнить следующие шаги, чтобы запустить редактор VB. Щелкните вкладку «Разработчик». В группе «Код» выберите Visual Basic

img2

Скопируйте приведенный ниже код в стандартный модуль

Функция NumericOnly (mystr As Variant)

Dim myOutput As String, i As Integer

Для i = 1 To Len (mystr)

If IsNumeric (Mid (mystr, i, 1)) Then _

myOutput = myOutput & Mid (mystr, i, 1)

Далее

NumericOnly = myOutput * 1

Конечная функция

===

img3

  • Чтобы получить результат в ячейке B2, формула:

* = NumericOnly (A2)

===

img4

===

Таким образом, мы можем получать числа только из ячейки, содержащей текст и числа, используя код VBA.

image 4