我正在制作电子表格,我正在尝试这样做:
Price Returned Net Profit
22 22
45 45
7 7
25+25 50
数据作为表达式放入,表示特定项目的返回值。我无法弄清楚的是如何使下一个单元格等于第一个单元格的表达值,所以基本上好像单元格是“= 22”和“= 25 + 25”。任何帮助将不胜感激。
答案 0 :(得分:2)
对于类似这样的简单事情,你可以创建一个UDF:
Function Evalu8(ByVal S As String) As String
Evalu8 = Evaluate(S)
End Function
被叫,如=Evalu8(A4)
不幸的是,没有内置的工作表功能会为你做,但VBA Evaluate function可以节省一天。
答案 1 :(得分:2)
你的问题引发了我对这个SO question和@ iDevlop的回答的记忆,导致this post(反过来又与Stephen Bullen的网页有一个死链接)。
基本上,您可以使用Evaluate函数,它实际上是一个未记录的Microsoft XLM宏。您必须在定义的名称中使用它,否则您将收到“函数无效”错误消息。由于它实际上是一个宏,因此需要将其保存为.xlm的工作簿,并且必须启用宏才能使其工作。如果所有这些对您有用,请按照以下方式进行操作(如果没有,请查看上面提到的SO问题的答案,或者@Daniel Cook的答案,当我正在处理这个答案时,它会弹出):
EvaluateCellToLeft
=evaluate(Sheet1!A1)
这就是它在Excel 2010中的外观:
现在在B栏中输入=EvaluateCellToLeft
。请记住,这是一个命名范围,而不是公式,所以最后没有括号。