如何避免Excel计算公式两次?

如何避免Excel计算公式两次?,excel,evaluation,Excel,Evaluation,我刚开始学习Excel,在练习中,我经常发现自己在一个公式中复制一个子表达式。例如,如果要在计算某些表达式时检查可能的错误(例如vlookup),以便输出合理的错误消息,我会尝试类似if(iserror(expression);“error”;expression)。这很好,但留给我的问题是,这是否意味着Excel计算表达式两次,这可能会产生计算成本。也许它不会(因为它会使用一些聪明的懒惰策略),但如果它这样做了,怎么能避免呢?我是否必须编写自己的函数(VBA?),或者是否有一种内联方式(例如,

我刚开始学习Excel,在练习中,我经常发现自己在一个公式中复制一个子表达式。例如,如果要在计算某些
表达式时检查可能的错误(例如
vlookup
),以便输出合理的错误消息,我会尝试类似
if(iserror(expression);“error”;expression)
。这很好,但留给我的问题是,这是否意味着Excel计算
表达式两次,这可能会产生计算成本。也许它不会(因为它会使用一些聪明的懒惰策略),但如果它这样做了,怎么能避免呢?我是否必须编写自己的函数(VBA?),或者是否有一种内联方式(例如,将
表达式
绑定到变量)

解决此问题最慢的方法是在自己的单元格中计算
表达式
,然后在公式中引用该单元格的两个位置,而不是在每个位置复制
表达式
的公式。

您也可以使用
=IFERROR(expression,[on error msg])
来解决此问题

在Excel中绑定表达式的方法是将其放入自己的单元格中。谢谢您的回复。我想到了这个选项,但我想在某些情况下,您可能希望直接执行,而不会在电子表格中看到中间步骤。谢谢您的回复。这正是我要找的!