如何用VB编程对输入TextBox中输入的任意公式进行运算:a=(b+d)/c ? 5

主要是ExcelVBA编写宏,用于Excel数据处理的。如果可以的话,最好是VBA的。请各位大侠不吝赐教。... 主要是Excel VBA编写宏,用于Excel数据处理的。如果可以的话,最好是VBA的。请各位大侠不吝赐教。 展开
 我来答
aniu0418
2012-10-20 · TA获得超过605个赞
知道小有建树答主
回答量:165
采纳率:0%
帮助的人:63.9万
展开全部
这个我编过,刚学vb时编着玩的,刚才去电脑里找了,却怎么也找不到了,我给楼主说下思想吧。
因为用文本框输入的是一段文本,计算机不认识,需要对这段文本进行字符串处理,说白了就是分割这个式子,把数字、运算符分割出来,可以有很多种方法,我用了一种可能比较简单的方法。
首先观察任意一四则运算式a+b*(c-d)/e,可以按运算级分为括号、乘除、加减。任意一四则运算式都可以在遇到括号时将括号里的式子作为一独立的四则运算式;遇到加减可以将后边整个式子作为一个式子(括号里边的加减因为已经先将整个括号分割出来了,不影响这个结论);遇到乘除顺序运算。
因而可以对整个式子从左至右逐个字符分析,逐个取数判断是数就加上前一个temp*10的值再保存到temp,以保证取到的一直是可以计算的数值,是运算符就调用各自处理函数:遇到左括号就用括号处理函数直到遇到右括号为止返回计算值;遇到加减号就循环调用加减处理函数直至算完返回计算值;遇到乘除就一直算下去(我记得我是将乘除作为主函数的)。
说起来很麻烦,其实你写一下就知道很简单了,我记得一共不到30行左右。
不过还是不建议用vb编这样的函数,没太大意义,用来玩还可以。
smilesuka
2012-07-08
知道答主
回答量:28
采纳率:0%
帮助的人:9.5万
展开全部
今天刚开始学VB,
看不懂你的问题补充啊,不过就你的标题而言,我用用我刚学的知识试试,
如果只要运算a=(b+d)/c

Private Sub Command1_Click()
txta=(Val(txtb)+Val(txtd))/Val(txtc)
End Sub

好吧,我是来打酱油的 - 。- 坐等大神出现 ~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-07-06
展开全部
“ jnwinfan”说的不错。“赞同”
不同的编程语言各有所长、同时也各有所短。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jnwinfan
2012-07-06 · TA获得超过197个赞
知道小有建树答主
回答量:402
采纳率:87%
帮助的人:168万
展开全部
对vb,这可不是个简单的问题,能实现,很复杂
对vfp,非常简单,直接使用 宏替换 即&
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wrx91
2012-07-06 · 超过18用户采纳过TA的回答
知道答主
回答量:125
采纳率:0%
帮助的人:68.1万
展开全部
用C吧,VB太麻烦了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式