У меня есть UDF, который будет искать в данной ячейке числа внутри скобок, а затем суммировать все числа внутри скобок в данной ячейке, это хорошо работает в 90% случаев, но когда внутри скобок есть что-то, что нечисло, то есть слово или фраза, он вернет # ЗНАЧЕНИЕ!Я пытаюсь исправить это, чтобы он игнорировал слова и т. Д., Находящиеся внутри скобок.Также по какой-то причине, имея "."после круглых скобок делает так, чтобы числа в скобках перед «.»игнорируются, когда они не должны быть.
снимок экрана описанных выше проблем
![screenshot of problems explained above](https://i.stack.imgur.com/N4D7n.png)
Функция выглядит следующим образом
Public Function Addum(rng As Range) As Double
Dim s As String, L As Long, temp As String
Dim CH As String
s = rng.Value
L = Len(s)
For i = 1 To L
CH = Mid(s, i, 1)
If CH Like "[0-9]" Or CH = "." Or CH = "(" Or CH = ")" Then
temp = temp & CH
Else
temp = temp & " "
End If
Next i
temp = Application.WorksheetFunction.Trim(temp)
arr = Split(temp, " ")
For Each a In arr
If Left(a, 1) = "(" Then
a = Mid(a, 2, Len(a) - 2)
If IsNumeric(a) Then
Addum = Addum + CDbl(a)
End If
End If
Next a
End Function
Этот вопрос отличается от Excel:Суммируйте числа внутри текстового блока в ячейке , потому что я спрашиваю, чтобы он работал, когда в скобках присутствуют слова, а когда есть "."после скобок.
Заранее благодарим за любую помощь, которую вы можете оказать!