謝謝你提供,在看你的公式時,也讓我想到另一種簡單寫法(列舉法)
Function MyCal(MyStr$) As Double
Dim Dic As String, xStr As String
Dic = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.0123456789%+-*/^()"
For i = 1 To Len(MyStr)
If InStrB(1, Dic, Mid(MyStr, i, 1), 1) <> 0 Then
xStr = xStr & Mid(MyStr, i, 1)
End If
Next i
MyCal = Evaluate(xStr)
End Function