手机版

VBA分裂算术表达式

时间:2021-09-22 来源:互联网 编辑:宝哥软件园 浏览:

将算术表达式拆分为组成表达式的数学元素,例如,将表达式2 (19-4)/3拆分为。

如何用VBA码实现?

要点:如何提取表达式中的多个数字,比如上例中的数字19。

解决方法:用一个临时变量来判断是否是数字,用这个变量来计算数字的个数,然后用这个变量作为遍历条件来获取数字。

VBA代码:

Sub SplitExpress()

存储表达式的每个字符。

Dim var1()

将每个元素(符号和数字)存储在表达式中。

Dim var2()

“表达式”

模糊表示为字符串

“循环变量”

模糊如龙

暗淡的j一样长

计数来确定动态数组的大小。

模糊的我计算一样长

表达式长度

一样长

临时变量,用于存储数字元素中的字数。

暗淡的温度一样长

将相邻的数字组合成一个数字元素。

将字符串变暗为字符串

'示例表达式'

可以用你自己的表情代替。

或者使用输入框让用户自己输入表达式。

express=" 66 {[3((5-2)* 3 2)/2][2(66-3)/3]} "

lLen=Len(express) 1

将数组大小重新定义为表达式长度。

注意将数组长度增加1。

以免漏掉最后一个没有括号的数字。

雷迪姆变量1(1至伦)

将表达式拆分为单个字符。

对于i=1到lLen

var1(i)=Mid(express,I,1)

接下来我

温度=0

“遍历表达式”

对于i=1到lLen

如果相邻的字符是数字,把它们拿出来连接成一个数字。

如果变量1(i)像“[0-9]”那么

温度=温度1

其他温度0时

对于j=1至温度

str=str var1(Itemp j1)

下一个j

iCount=iCount 1

ReDim保留var2(1到iCount)

var2(iCount)=str

温度=0

str=" "

如果…就会结束

如果是符号,直接存储。

选择案例变量1(i)

大小写“{”、“[”、“(”、“”、“}”、“]”、“”、“-”、“*”、“/”

iCount=iCount 1

ReDim保留2(1至I帐户)

var2(iCount)=var1(i)

结束选择

接下来我

重组组成表达式的元素。

验证结果是否正确?

对于I=LBound(var2)to bound(var2)

str=str var2(i)

接下来我

MsgBox“拆分表达式为:”字符串。

末端接头

运行代码后的结果如下图1所示。

图1

看到了吧,表情已经恢复了!您可以尝试用其他算术表达式替换代码中的代表性表达式。

以下是代码的图片版本:

版权声明:VBA分裂算术表达式是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。