从或评估不需要的表情防止Excel()(Prevent Excel from evaluating

2019-09-29 16:39发布

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

我知道如何重新安排我的公式来解决这个问题。 我有它,它是显示这一点的方式。 你可以看到OR()语句检查是否第一MATCH()返回NA。 当它,OR()都将自动返回TRUE,而不是评估的第二场比赛(),因为条件已经满足的OR()返回true不管其他参数也有。 你会发现,第一和第二MATCH()函数做同样的事情。 这是怎么回事,因为第二场比赛()正在执行,即使它不具有的OR()已经不满足于一个TRUE,因此函数应该返回“”整个函数返回NA。

这是一个错误,或者这是故意的吗?

Answer 1:

在Excel公式或不带有短路评价(没有不和),但如果它确实。 我想它的故意,因为它一直都是这样的。



Answer 2:

要在什么查尔斯说,OR和扩张,因为它们是什么,不能短路。 式的计算结果的所有输入拿出的结果。 话虽这么说,你也许可以写一个UDF,会做你的要求。



文章来源: Prevent Excel from evaluating unneeded expressions in OR()
标签: excel formula