在没有脚本的公式中使用单元格值作为逻辑运算符[Excel]

时间:2017-10-13 11:28:50

标签: excel-formula

我想在公式中使用作为逻辑运算符(>,≥,<,≤)的单元格的值来计算另一个单元格。

例如基于逻辑运算符的IF语句:

A1: 5
A2: 3
A3: >
A4: 4
A5: =IF((A1-A2) ??A3?? A4;1;0)

我需要更换什么?? A3 ??使这项工作?

2 个答案:

答案 0 :(得分:1)

我能想到的唯一方法是为每种类型的比较运算符编码公式。例如,如果您想在以下公式中同时支持<>

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))

在上面的公式中,我返回-1A3应该包含我们没想到的运算符(在这个简单示例中不是<>)。

答案 1 :(得分:0)

您可以使用以下公式:

=NOT(ISERROR(FIND(A3, MID("<≤≥>", 2 + SIGN((A1-A2) - A4), 2))))

因此,一般来说,您的公式将如下:

=NOT(ISERROR(FIND(#OPERATOR#, MID("<≤≥>", 2 + SIGN(#OP1# - #OP2#), 2))))

好处是您需要指定仅比较一次的数字(因此,您可以为这些数字设置任意长的公式,而不必担心您重复它)。

这通过映射符号&lt;,≤,≥和&gt;来工作。数字1,2,3,4然后将其与初始数字差异的符号进行比较。