如何计算给定的字符串计算表达式,如“ 1+2*3-4/5+ 6^7” 的值?笔者在使用EXCEL2002 时发现在单元格中可以输入此类表达式,输出的则是计算结果,所以写了一个函数,与大家共享。 '引用microsoft excel 10.0 object library( OR OTHER VERSION) End Function Private Sub Command1_Click() Private Sub Form_Load()
' add a textbox and a commandbutton to form1
Function result(ByVal x As String)
Dim myobj As Object
Set myobj = CreateObject("excel.sheet")
Set myobj = myobj.Application.ActiveWorkbook.ActiveSheet
myobj.Range("a1").Formula = "= " & x '
result = myobj.Range("a1").Value
If err.Number > 0 Then MsgBox err.Description
Set myobj = Nothing
Dim x As String
x = Text1.Text
MsgBox x & "=" & result(x)
End Sub
Text1.Text = "3*9^10-21*256^a" '错误表达式,返回错误信息。你可以改成合法表达式再按单击COMMAND1
End Sub
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073