求助excel大神,同一个单元格有文字和多个数字,求和,怎么处理,谢谢!!

2025-04-07 07:48:25
推荐回答(3个)
回答1:

Function MySum(rng As Range)
    
    Dim ret As Single
    Dim reg As Object
    
    Set reg = CreateObject("Vbscript.Regexp")
    
    reg.Pattern = "\d+(\.\d+)?"
    
    reg.Global = True
        
    For Each r In rng
                    
        Set obj = reg.Execute(r)
        
        For i = 0 To obj.Count - 1
            
            ret = ret + obj(i)
            
        Next i
    
    Next r
    
    MySum = ret
    
End Function

回答2:

Function mysum(str As String) As Double
Dim tempi
tempi = ""
If str = "" Then
mysum = 0
Else
For i = 1 To Len(str)
If Mid(str, i, 1) = "." Or Mid(str, i, 1) = "0" Or Val(Mid(str, i, 1)) > 0 Then
tempi = tempi & Mid(str, i, 1)
Else
mysum = mysum + Val(tempi)
tempi = ""
End If
Next
mysum = mysum + Val(tempi)

End If
End Function

回答3:

这个我会写,发你的文件来!