想不到你还在这,我又回来了,“/”是计算符号,是除以的意思,所以你的数据输入还是尽量标准为好。
现在增加一重判断,如果“/”后面不是数字就不把它看作是计算符号。
Function fsum(re)
Dim n As Integer
Dim i As Integer
Dim str As String
Dim stra, a
re = Replace(re, "×", "*")
n = Len(re)
For i = 1 To n
str = Mid(re, i, 1)
If InStr(1, "1234567890+-*().", str) <> 0 Then
stra = stra & str
Else
If str = "/" Then
a = Mid(re, i + 1, 1)
If InStr(1, "1234567890", a) <> 0 Then
stra = stra & str
End If
End If
End If
Next
stra = "=" & stra
fsum = Evaluate(stra)
End Function
[此贴子已经被作者于2006-7-16 16:56:18编辑过]
|