前提:1、用户在文本框中输入公式,公式中仅包含3类元素:长、宽、高, 运算符号仅有+、-、*、/
2、长、宽、高的数据为变量A、B、C
3、根据用户输入的公式(如:2*长+1.5*高-宽-长),由程序计算出公式的结果要求:
1、用户能够任意使用长、宽、高和四个运算符号组合自己的公式
2、程序根据用户的公式,直接结算出来结果本人是个技校毕业的苦孩子,碰到这个问题,一点办法都没有,求求个位高人给各出路了,谢谢大家了!!!!
2、长、宽、高的数据为变量A、B、C
3、根据用户输入的公式(如:2*长+1.5*高-宽-长),由程序计算出公式的结果要求:
1、用户能够任意使用长、宽、高和四个运算符号组合自己的公式
2、程序根据用户的公式,直接结算出来结果本人是个技校毕业的苦孩子,碰到这个问题,一点办法都没有,求求个位高人给各出路了,谢谢大家了!!!!
'以下我介绍另一种方法,用VBA中的EbExecuteLine 吧Option ExplicitPrivate Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As LongPublic Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
End FunctionPrivate Sub Command1_Click()
Dim strFormula As String
'定义变量
ExecuteLine "Dim A As Single"
ExecuteLine "Dim B As Single"
ExecuteLine "Dim C As Single"
'赋变量值
ExecuteLine "A=20"
ExecuteLine "B=10"
ExecuteLine "C=5"
strFormula = "2*A+1.5*C-B-A"
ExecuteLine "debug.print " & strFormula '执行公式,比如A=A+1等End Sub
我看过Script Control的代码,很简单,可是我的代码中不能使用控件。因为我是在access2003里面编,那里面没有这个控件。
不过无论如何,谢谢winehero(编程人生)
而是使用VBA.dll中的EbExecuteLine 方法而已。事实上也复杂,仅仅简单
调用该方法而已。