Excel - 一步检查数字是否在范围内的方法?

Excel - Way to check if number is within range in a single step?

在 Excel 中,我试图检查某个数字是否在某个范围内 而无需 输入该数字两次。为什么?因为我要检查的数字是一个非常大的公式的一部分,所以我尽量避免输入两次。可以使用辅助细胞,但我尽量避免使用。

除了不输入两次 {very long expression} 之外,是否可以有效地完成下面显示的公式?

= AND({very long expression}<{upper bound},{very long expression}>{lower bound})

注意

我在这里回答我自己的问题,但我想知道是否还有其他人有更好的解决方案,或者是否有一个内置的 Excel 函数已经可以做到这一点。

可以用单个条件判断超长表达式偏移上下限平均值的绝对值是否小于上限偏移上下限平均值.

下面的简单示例:

0 < x < 6

(average of 0 and 6 is 3, so subtract 3 from all expressions below)

-3 < x-3 < 3

abs(x-3) < 3

要将其合并到 Excel 公式中,您可以这样做:

= ABS({long expression}-AVERAGE({upper},{lower}))<({upper}-AVERAGE({upper},{lower}))

上面这个公式中出现的唯一重复是 AVERAGE({upper},{lower}),但是假设上限和下限是硬编码的或者是单个单元格引用,这个公式将比键入更短(并且更有效) {very long expression} 两次。实际上,如果上限和下限是硬编码的,您也可以只硬编码它们的平均值以使公式更短。