思路:借鸡下蛋,利用EXCEL的强大功能
操作:假如你的表达式在TEXT1控件里,将下列代码复制到运行代码里:
Dim xlcell
Set xlcell = CreateObject("excel.Application")
xlcell.Workbooks.Add
xlcell.ActiveSheet.Cells(1, 1).Formula = "=" & Text1
Text1 = xlcell.ActiveSheet.Cells(1, 1)
xlcell.ActiveWorkbook.Close SaveChanges:=False
这样,不但一般的表达式能计算,EXCEL支持的各种复杂运算也可以!
你走啦弯路~
很简单~
当你单击数字9.8.7.6.....分别在TEXT中显示~ 在单击 运算符时 则把文本框中的文本 用VAL()函数转化成数值~ 然后你在单击后面数字的时候还在文本框显示~ 然后在用VAL()函数转换成数值~ 在单击= 时运算就可以了~
用Val()函数进行转化,就是Val(text1.text)就好了··
简单的运算可以用VB自带的控件:microsoft script ...记不得了。
复杂的就需要用逆波兰算法。
自定义一个函数,在函数中使用判断语句转换(由于转换的表达式不清楚,无法具体回答)