Edite VBA UDF para sumar números entre paréntesis mientras ignora las palabras entre paréntesis
Tengo un UDF que buscará en una celda determinada los números dentro del paréntesis y luego sumará todos los números dentro del paréntesis en una celda determinada, funciona bien el 90% del tiempo, pero cuando tengo algo dentro del paréntesis que no es un número es decir, una palabra o frase, devolverá # ¡VALOR! Estoy tratando de arreglar esto para que ignore las palabras, etc. que están dentro del paréntesis. También por alguna razón, tener un "." después del paréntesis hace que los números en el paréntesis antes del "." son ignorados cuando no deberían serlo.
screenshot de los problemas explicados anteriormenteLa función es la siguiente
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
esta pregunta es diferente deExcel: Suma números dentro de un bloque de texto en una celda porque estoy pidiendo que funcione cuando hay palabras dentro del paréntesis presente y cuando hay "." después del paréntesis.
Gracias de antemano por cualquier ayuda que puedan brindar!