利用EXCEL 实现字符串的计算

王朝vb·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

如何计算给定的字符串计算表达式,如“ 1+2*3-4/5+ 6^7” 的值?笔者在使用EXCEL2002 时发现在单元格中可以输入此类表达式,输出的则是计算结果,所以写了一个函数,与大家共享。

'引用microsoft excel 10.0 object library( OR OTHER VERSION)

' 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

End Function

Private Sub Command1_Click()

Dim x As String

x = Text1.Text

MsgBox x & "=" & result(x)

End Sub

Private Sub Form_Load()

Text1.Text = "3*9^10-21*256^a" '错误表达式,返回错误信息。你可以改成合法表达式再按单击COMMAND1

End Sub

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航