多个单元格内的数学计算式,如何批量求和?
今天遇到了这样的一个问题,感觉非常有趣且有价值,或许你在工作中经常遇到但并没有找到好的解决方法。
如下图所示:例如下面表格B列:D列每一行都是数学上的文本计算表达式,想要在E列求出该行所有单元格的求和数。
如果我们直接在E5单元格用手动输入的方式计算的话,效率非常低,且这种计算不属于函数公式,不能下拉填充批量得到计算结果。如下图所示,只能缓慢的得到第一个结果,后面的全是错误。
下面我们来介绍一下解决方法,用EVALUATE函数+TEXTJOIN函数嵌套使用来完成。
注意:
此函数对软件版本有要求,须使用Excel2016Mondo版本、Excel2019版本,金山WPS2019版本、Office365版本。
在E5单元格输入公式:
=EVALUATE(TEXTJOIN("+",1,B5:D5))
下拉填充公式即可完成。
公式浅析:
TEXTJOIN(分隔符,TRUE,需要合并的字符串区域或列表)
①简单来说它就是一个连接文本的函数;
②通过分隔符的,连接所有符合条件的单元格内容和区域。
参数:
①第一参数分隔符代表我们可以任意设置任何符号来连接数据;
②第二参数TRUE代表忽略空值,也就是不存在的值会自动忽略,等同于1;
③第三参数代表对应的数据区域。
公式分解效果图:
TEXTJOIN("+",1,B5:D5)
即可以将B5:D5区域中的文本算式用符号“+”连接起来。
WPS表格文件中有Evaluate函数,可以直接使用,但是有的Office Excel中却没有此函数供直接使用,需要使用定义名称来完成,定义名称的方法以前的历史文章讲到过,这里就不在讲解了。我们以WPS2019为例。
参考文章(点击查看):Excel文本算式自动计算!
EVALUATE(formula_text)
formula_text 是一个要求值的以文字形式表示的表达式。(比如100*30*20+40^2 等这些以文字形式的表达式。)
对以文字表示的一个公式或表达式求值,并返回结果。
公式分解效果图:
EVALUATE(TEXTJOIN("+",1,B5:D5))
即可将连接好的文本算式,进行计算。