Я действительно новичок в Excel VBA и изо всех сил пытаюсь написать функцию, которая может извлечь десятичное число из буквенно-цифровой строки, такой как 1,25 / г или 23,5 г и c. Десятичное число всегда будет впереди.
Я нашел несколько решений этой проблемы, но они не относятся к десятичным числам.
Я нашел решение, которое работает для некоторых строк, но не для всех. Я разместил функцию ниже. Возвращает 1,2 г как 1, но работает для многих других чисел.
Заранее спасибо.
Public Function first_try(a) As Double
Dim i As Long
For i = 1 To Len(a)
If IsNumeric(Mid(a, i, 1)) Then
first_try = Val(Mid(a, i))
Exit For
End If
Next i
Debug.Print firt_try
End Function