简单点,就使用Microsoft Scripting Control计算。 Private Sub Command3_Click() Dim cs As New ScriptControl Dim t As String t = Text1.Text cs.Language = "VBScript" cs.AddCode t Dim r As String r = cs.Run End Sub
Private Sub Command1_Click() Set ms = CreateObject("MSScriptControl.ScriptControl") ms.Language = "JScript" ms.AddCode "x=3.1;y=4.2;e=2.71828182845905;z=Math.sin(Math.pow(x,2)+5*x)+Math.pow(e,(y+2))+5;" Debug.Print ms.Eval("z") x = 3.1 y = 4.2 e = 2.71828182845905 g = Sin(x ^ 2 + 5 * x) + e ^ (y + 2) + 5 Debug.Print g End Sub
Private Sub Command3_Click()
Dim cs As New ScriptControl
Dim t As String
t = Text1.Text
cs.Language = "VBScript"
cs.AddCode t
Dim r As String
r = cs.Run
End Sub
Set ms = CreateObject("MSScriptControl.ScriptControl")
ms.Language = "JScript"
ms.AddCode "x=3.1;y=4.2;e=2.71828182845905;z=Math.sin(Math.pow(x,2)+5*x)+Math.pow(e,(y+2))+5;"
Debug.Print ms.Eval("z") x = 3.1
y = 4.2
e = 2.71828182845905
g = Sin(x ^ 2 + 5 * x) + e ^ (y + 2) + 5
Debug.Print g
End Sub
可以。再复杂的都可以。
vbscript,jscript的代码都可以执行出来。