当前位置:文档之家› Excel教程:三行代码!完美替代宏表函数EVALUATE

Excel教程:三行代码!完美替代宏表函数EVALUATE

Excel教程:三行代码!完美替代宏表函数EVALUATE
Excel界曾经流行的一个经典问题是求算式计算结果。

这个问题的源头很可能来自于工程预算工作。

工程预算中的材料规格经常用算式表达,比如2*2、40*50、3.14*15*15等等。

预算人员需要把这些算式计算出结果。

类似的问题如下图一,第2行算式为1+1,计算结果应为2。

尽管算式是小学水平,但表格若有上千行算式,逐行计算手工填列结果非常费时。

经典问题的经典解法是,使用宏表函数EVALUATE。

宏表函数EVALUATE经过定义名称才能在工作表使用。

假如算式和计算结果的列相对位置发生变化时,不能直接修改公式,而是要再次定义名称,相当不便。

Excelman认为使用自定义函数是不错的替代方法。

下面是自定义函数EVALUATEVBA的代码。

函数的代码只有三行!诸位几乎不需要考虑任何VBA代码逻辑,简单易用。

总之,名副其实拿来即用! 代码如下:Public Function EVALUATEVBA (ByVal s As String) As Variant EVALUATEVBA = Application.Evaluate(s)End Function
自定义函数EVALUATEVBA怎么样使用呢?先把自定义函数的三行代码添加到工作簿的模块中。

之后就能在工作簿里使用自定义函数EVALUATEVBA了。

代码添加到工作簿的模块具体操作步骤请看下图二。

那么,函数
EVALUATEVBA有什么作用呢?它的作用与宏表函数EVALUATE相似,但用起来方便多啦! 比如上述图一求算式的计算结果问题,B1单元格直接填写公式
=evaluatevba(A2),向下填充公式,OK!。

相关主题