我想使用一个单元格的值,它是一个公式中的逻辑运算符(>,≥,<,≤)来计算另一个单元格。
例如,基于逻辑运算符的IF语句:
A1: 5
A2: 3
A3: >
A4: 4
A5: =IF((A1-A2) ??A3?? A4;1;0)我需要用什么来代替??A3??让这件事成功吗?
发布于 2017-10-13 11:35:34
我认为唯一能做到这一点的方法是为每种类型的比较运算符编码公式。例如,如果您希望在以下公式中同时支持<和>:
IF((A1-A2) OP A4, 1, 0)然后,您可以包含小于和大于的公式,并选择一个基于A3的公式
IF(A3="<", IF((A1-A2) < A4, 1, 0), IF(A3=">", IF((A1-A2) > A4, 1, 0), -1))在上面的公式中,如果-1包含一个我们没有预料到的运算符(在这个简单的例子中不是<或> ),我就返回A3。
发布于 2017-10-13 13:50:19
您可以使用如下公式:
=NOT(ISERROR(FIND(A3, MID("<≤≥>", 2 + SIGN((A1-A2) - A4), 2))))因此,一般来说,你的公式如下:
=NOT(ISERROR(FIND(#OPERATOR#, MID("<≤≥>", 2 + SIGN(#OP1# - #OP2#), 2))))好处是,您需要指定只比较一次的数字(因此,可以为这些数字提供任意的长公式,而不必担心重复)。
这是通过将符号<、≤,≥和>映射到数字1、2、3、4,然后将其与初值差异的符号进行比较。
https://stackoverflow.com/questions/46728885
复制相似问题