EXCEL中引用单元格内容(以文本公式表达的,没有“=”号)并直接得出结果
问题:如何对上图实例中A列单元格内以文本(没有“=”)表达的公式进行快速计算,将得出
的结果填列在B列?!
一般人,包括我在内,碰到这个问题,会做如下两种偿试:
(1)在B1中直接输入:=A1,但,得到的结果仍然是调用了A1的表达式,无法求得结果。
此时,B1 中的公式"=A1",只是引用地址,"=A1"也只是调用单元格A1的内容。
(2)在B1中输入:=(=A1),理想当中,就是相当于输入了“=5+6+7+8 ”这个公式的实际内容?,
其实不然,结果让自己大失所望:excel将认为它是错误的输入。
其实,你或许知道上述两种方法显然是不可行的,但是因为没有其他办法,所以你会去偿试,结果
就是确定不能行!
没有办法的办法就是:
将A列数据复制粘贴到B列,然后在单元格文本表达式前输入“=”,逐个单元格进行操作。
如B1单
元格内容为“=5+6+7+8”,作为一个独立的计算公式,在输入“=”后,即可显示结果26。
但如果内容很
多,你就必须花费很多时间进行操作...........
基于上述疑惑,我从百度上找寻解决方案,发现这是个“疑难问题”,无法运用常规函数解决?!
给出的最佳答案都是使用了一个叫做EVALUATE的宏表函数(可以说是一个宏,点击查看详情>>>>),结合我对电子表格应用的掌握,整理该问题解决方案如下:
方法一:首先,对于这个疑难问题,网上最多的答案,就是单元格“定义”法:
先左键选中B1 ,点击菜单命令“插入-名称-定义”,弹出“定义名称对话框:
上面一行“在当前工作簿中的名称”录入“B ”者是其他什么内容,可以是字母或是文字;
下面一行“引用位置”录入“=EVALUATE(A2) ”,点击“确定”退出对话框。
然后,在B1中输入“=B”,向下拉动单元格,填充需要计算的区域,即可得到结果。
方法二:对“没有办法的办法”进行改进,具体可如下操作:
在B1单元格录入公式:="="&A1,可以得到显示结果为=5+6+7+8,向下拉动单元格,填充需要计
算的区域,但这个结果也只是一个文本表达式,只是前面加上了“= ”,实际上是两个符号“= ”
与“5+6+7+8 ”的一个组合(& ,文本连接符),如下图所示:
接下来,选定并复制B列,同样选定B列,进行“选择性粘贴”为“数值”,此时,B1里的内容就不
再是公式,而是=5+6+7+8 ,虽然B列单元格格式已经设置为“数值”了,但此时,B1仍未显示结果,可进行操作:执行ctrl+h或(ctrl+f),调出查找与替换窗口,直接把“=”替换一次“=”就会重算了,
即可显示结果!。