搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > Excel之家ExcelHome > 使用EVALUATE函数计算文本算式

使用EVALUATE函数计算文本算式

Excel之家ExcelHome 2019-04-05

EVALUATE函数的作用是对以文字表示的一个公式或表达式求值,并返回结果。其语法为:

EVALUATE(formula_text)

formula_text    是一个要求值的以文字形式表示的表达式。

计算简单的文本算式

示例 2310计算简单的文本算式

选中C2单元格,定义名称“计算1”,公式为:

=EVALUATE(!B2&T(NOW()))

C2单元格输入以下公式,并向下复制到C9单元格,计算出B列的算式结果,如图 2327所示。

=计算1


图 2327    计算文本算式


EVALUATE函数的参数最多只支持2^8-1=255个字符,超出时返回错误值#VALUE!。

EVALUATE函数不仅可以计算简单的数学表达式,也可以计算含有其它函数的文本算式,如图 2328所示:


使用EVALUATE函数计算文本算式

图 2328    计算含有其它函数的文本算式


计算复杂的文本算式

示例 2311计算复杂的文本算式

如图 2329所示,选中C2单元格,定义名称“计算2”,公式为:

=EVALUATE(SUBSTITUTE(SUBSTITUTE(!B2,"[","+N("""),"]",""")")&T(NOW()))

C2单元格输入以下公式,复制到C9单元格。

=计算2


图 2329    计算复杂的文本算式


以B2单元格“8*1800[空调]+6*3500[洗衣机]”为例,主要思路为:

1、将字符串中的中文部分剔除影响,[空调]、[洗衣机]等。

2、常规的直接替换的方法均无效,于是使用N函数,因为N函数的参数如果为“文本”,则N("文本")结果为0。

3、目标:将以上字符串改为“8*1800+N("空调")+6*3500+N("洗衣机")”,这样便可以使用EVALUATE进行计算。


以下为公式中不同部分的说明:

1、SUBSTITUTE(!B2,"[","+N(""")部分,首先将字符串中的左中括号“[”替换为“+N("”,得到字符串:“8*1800+N("空调]+6*3500+N("洗衣机]”。

2、SUBSTITUTE(SUBSTITUTE(!B2,"[","+N("""),"]",""")")部分,将字符串中的右中括号“]”替换为“")”,得到字符串:“8*1800+N("空调")+6*3500+N("洗衣机")”

3、&T(NOW())部分,连接易失性函数NOW,以方便有单元格发生变化时进行自动重算。

4、EVALUATE(SUBSTITUTE(SUBSTITUTE(!B2,"[","+N("""),"]",""")")&T(NOW())):相当于:EVALUATE("8*1800+N("空调")+6*3500+N("洗衣机")")

注意,在函数中,如果得到的结果中需要英文状态的半角双引号,则公式中的双引号数量需要加倍,比如A10单元格输入公式:="""",四个英文状态下的半角双引号,则A10单元格返回结果为一个双引号“"”,其中最外层的两个双引号表示文本引用符号,中间的两个双引号表示数量加倍后的双引号。


本文节选自北京大学出版社、Excel Home团队出版的《Excel 2016函数与公式应用大全》,本书全面系统地介绍了Excel 2016函数与公式的技术特点和应用方法,深入揭示背后的原理概念,并配合大量典型实用的应用案例,帮助读者全面掌握Excel的函数与公式。全书分为4篇共32章,内容包括公式与函数基础、常用函数、函数综合应用,以及其他功能中的函数应用。附录中还提供了Excel 2016规范与限制、Excel 2016常用快捷键、Excel 2016常用函数及功能说明等内容,方便读者查阅。


本书适合各层次的Excel用户,既可作为初学者的入门指南,又可作为中、高级用户的参考手册。书中大量的实例还适合读者直接在工作中借鉴。扫码了解更多:


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《使用EVALUATE函数计算文本算式》的版权归原作者「Excel之家ExcelHome」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注Excel之家ExcelHome微信公众号

Excel之家ExcelHome微信公众号:iexcelhome

Excel之家ExcelHome

手机扫描上方二维码即可关注Excel之家ExcelHome微信公众号

Excel之家ExcelHome最新文章

精品公众号随机推荐