我正在制作excel中的公式,我想轻松阅读和修改公式。但是,我仍然希望评估公式。
到目前为止,我一直在一个单独的单元格中重新创建公式并在那里进行评估。这使我的工作暴露于拼写错误或遗忘等,并且通常会浪费时间。我想自动化这个过程。 我的第一次尝试是在一个单元格(c2)中输入公式(例如:a2 + b2),并且只需要第二个单元格读取= c2。然而,这只是使第二个单元格说“a2 + b2”而不进行评估。
如何命令第二个单元格使用第一个单元格中定义的公式?
答案 0 :(得分:1)
首先在标准模块中放置 U ser D 定义 F unction (UDF):
Public Function eval(strng As String) As Variant
eval = Evaluate(strng)
End Function
然后选择一个单元格并输入:
=eval(C2)
用户定义函数(UDF)非常易于安装和使用:
如果保存工作簿,UDF将随之保存。 如果您在2003年之后使用的是Excel版本,则必须保存 该文件为.xlsm而不是.xlsx
删除UDF:
从Excel使用UDF:
= EVAL(A1)
要了解有关宏的更多信息,请参阅:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
和
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
有关UDF的详细信息,请参阅:
http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
必须启用宏才能使其生效!
答案 1 :(得分:1)
没有VBA:
定义姓名EvaC2
,参见:
=EVALUATE(Sheet1!$C$2)
(调整工作表名称以适应),然后输入:
=EvaC2
请注意,这使用XLM,其剩余寿命可能很短。