不是单独的转换如:
A="5+5+5"
print a
显示的是5+5+5
我需要让字符变成运算即print a 显示的是 15
參考答案:或者可以借用脚本来实现表达式的计算,它可以进行较复杂的计算:
'// 表达式计算
Public Function ExpressionsEvaluate(ByVal strExpressions As String) As Currency
Dim objEvaluate As Object
On Error GoTo LocalErr
'// 创建一个脚本对象
Set objEvaluate = CreateObject("MSScriptControl.ScriptControl")
With objEvaluate
'// 设置脚本语言为 VBScript
.Language = "VBScript"
'// 利用 VBScript 脚本的 Eval 函数来计算表达式
ExpressionsEvaluate = .Eval(strExpressions)
End With
Set objEvaluate = Nothing
Exit Function
LocalErr:
Err.Clear
ExpressionsEvaluate = 0
Set objEvaluate = Nothing
End Function
Private Sub Command1_Click()
'// 简单的加法计算
Debug.Print ExpressionsEvaluate("5+5+5")
'// 复合计算
Debug.Print ExpressionsEvaluate("(1+3)*5/2")
End Sub