【函数使用】EVALUATE函数的基本用法

刘航
刘航

创作者俱乐部成员

🔔

相信大家在使用表格的时候,常常会遇到这样的情形:在进行材料测量的时候,通常需要长、宽、高等数据,通常这样的数据以表达式的形式出现,如果能够把这样的表达式用一个函数直接求出结果就方便很多了。这个时候EVALUATE函数就派上用场了,让我们来看看这个函数的一些基础用法吧。

基本语法

EVALUATE函数能够对一个用文字展现的表达式求值,并且返回运算的结果。

📌

EVALUATE(文本表达式)

EVALUATE函数的参数是一个要求值的以文字形式表示的表达式或公式(比如 100*30*20+40^2 等这些以文字形式的表达式) 。

接下来我们将演示如何利用这个函数帮助我们快速求解表达式的值。

案例1:基础用法

下面有这样一个表,我们需要对各位员工的工资表达式进行演算,得到对应的结果。

这时我们可以使用EVALUATE函数帮我们解决问题,以B2单元格为例,我们输入:EVALUATE(B2)后,即可得到想要的结果,之后我们点击B2单元格右下角的填充柄,即可实现全部员工的工资计算。

结果如图所示:

案例2:进阶用法

现在问题来了,如果表格内容不是规范的表达式,里面添加了很多注释,该如何去掉注释,然后对表达式求值呢?例如下面的表格:

每一个项目里面都有人为添加的注解,这种情况下我们怎么把“工资”一列规范成表达式,得到正确的结果呢?笔者提供两种方法,如果大家有更好的方式,欢迎大家在评论区交流。

方法1:利用替换大法

第一种方法就是,利用替换的方式,将所有括号(这里的括号均为英文括号)及里面的内容替换掉,下面我将详细介绍一下步骤:

🔔
  1. 选中需要替换的区域,按快捷键Ctrl+H,找到替换窗口。

  1. 在替换窗口中的“查找内容”中输入:(*),里面的“*”号是通配符,代指任何长度的字符,“替换为”的部分不填写内容,即替换为空,这样就可以把表达式规范化了。

上述操作得到的结果如图所示:

当然,经常会有人问,我想用函数来解决这个问题,该如何实现呢?别急,这就把利用函数解决的方法给您呈上来。

方法2:利用EVALUATE+SUBSTITUTE函数组合实现

另外一种方法是利用SUBSTITUTE函数把不规范的部分替换掉,将其变成规范的表达式。

直接展示函数结果:

🔑

EVALUATE(SUBSTITUTE(SUBSTITUTE(B2,"(","+n("""),")",""")"))

大家可以看到,笔者使用了两次SUBSTITUTE函数得到了正确的结果,下面我将介绍一下这两个SUBSTITUTE函数具体是什么意思。

解释说明

我们第一次使用SUBSTITUTE函数的目的是先把B2单元格的左括号 "(" 替换为+n(",第二次使用的目的是把右括号“)”替换为")

例如B2单元格经过这次函数运算得到的结果是这样的:

🔔

2182+n("基本工资")+134+n("绩效")-100+n("迟到/缺勤")+200+n("加班费")

这么替换的目的是将括号内的数据放到N函数中,并用一对双引号包起来变成文本值,N函数的作用是将文本值返回0,数值返回自身

最后我们再使用EVALUATE函数对表达式进行计算,即可得到正确结果,如图所示:


不知道大家对EVALUATE函数的理解是否更进一步了呢,如果大家有更好的想法和有趣的问题,欢迎到评论区交流哦!

北京
浏览 3309
7
8
分享
8 +1
7
7 +1
全部评论 7
 
小表哥
居然还有这么好用的函数,怪我知道得太晚了
· 广东省
回复
 
song
学习了,先收藏,备用!谢谢大佬!
· 上海
回复
 
朱骏杰
学到了
· 上海
回复
 
A༄ ೄ 飛鳥無痕༣ྀ ೄ
个人觉得这个函数开发出来就是个鸡肋。针对这种情况,直接分组不同单元格录入,然后直接SUM函数求和,整个表单岂不是更整齐美观。
· 广东省
回复
 
张俊
张俊

WPS函数专家

航哥分享的关于EVALUATE函数的用法,让我又学习到了很多用法和进阶用法。跟着航哥不迷路,航哥带我们上高速。
· 上海
1
回复
刘航
刘航

创作者俱乐部成员

跟着俊哥走,函数不离手,收获天天有
· 北京
1
回复