防止Excel计算或()中不需要的表达式

防止Excel计算或()中不需要的表达式,excel,formula,Excel,Formula,我知道如何通过重新安排公式来解决这个问题。我有它显示这一点的方式。您可以看到OR()语句检查第一个MATCH()是否返回NA。当它返回TRUE时,OR()应自动返回TRUE,而不计算第二个匹配项(),因为满足了OR()返回TRUE的条件,无论其他参数是什么。您会注意到,第一个MATCH()函数和第二个MATCH()函数的作用相同。发生的情况是整个函数返回NA,因为第二个MATCH()正在执行,即使它不必执行,OR()已经满足于一个TRUE,因此函数应该返回“” 这是一个错误还是故意的?在Exce

我知道如何通过重新安排公式来解决这个问题。我有它显示这一点的方式。您可以看到OR()语句检查第一个MATCH()是否返回NA。当它返回TRUE时,OR()应自动返回TRUE,而不计算第二个匹配项(),因为满足了OR()返回TRUE的条件,无论其他参数是什么。您会注意到,第一个MATCH()函数和第二个MATCH()函数的作用相同。发生的情况是整个函数返回NA,因为第二个MATCH()正在执行,即使它不必执行,OR()已经满足于一个TRUE,因此函数应该返回“”


这是一个错误还是故意的?

在Excel公式中,或者不简化计算(和也不短路),但如果是。
我想这是故意的,因为它一直都是这样。

在Excel公式中,或者不简化计算(和也不简化计算),但IF简化计算。
我想这是故意的,因为它一直都是这样。

来扩展查尔斯所说的,或者不能因为他们是什么而被简化。该公式计算所有输入以得出结果。也就是说,你可以写一个UDF来满足你的要求。

来扩展Charles所说的,或者不能因为他们是什么而被简化。该公式计算所有输入以得出结果。也就是说,您可能可以编写一个UDF来满足您的要求

IF(OR(ISNA(MATCH(8,B10:B17,0)),MATCH(8,B10:B17,0)>8),"",...BLAH...)