在 cellA1
中,可以有<
, <=
, >
or >=
(of string)。
在单元格B1
中,有阈值的 int 值。
从A3
,有 int 的值。
+---+-----+----+
| | A | B |
+---+-----+----+
| 1 | < | 15 |
| 2 | | |
| 3 | 10 | |
| 4 | 20 | |
| 5 | ... | |
+---+-----+----+
当且仅当它尊重布尔运算符 ( ) 和阈值 ( ) 时,才A3
应复制 in的值。否则,应该是。当然,对于/ ,/等也是如此。B3
A1
B1
B3
#N/A
A4
B4
A5
B5
在该示例中,B3
应该是10
和B4
应该是#N/A
,因为 10 小于 15,但 20 不是。
这是我创建的一个公式,效果很好,但有点长(这是 for B3
):
=IF($A$1 = "<"; IF($A3 < $B$1; $A3; NA()); IF($A$1 = "<="; IF($A3 <= $B$1; $A3; NA()); IF($A$1 = ">"; IF($A3 > $B$1; $A3; NA()); IF($A3 >= $B$1; $A3; NA()))))
以更消化的方式相同:
=IF(
$A$1 = "<";
IF($A3 < $B$1;$A3; NA());
IF(
$A$1 = "<=";
IF($A3 <= $B$1; $A3; NA());
IF(
$A$1 = ">";
IF($A3 > $B$1; $A3; NA());
IF($A3 >= $B$1; $A3; NA())
)
)
)
有没有更方便的方法来完成这项工作?从字符串转换为运算符会很棒,但是,是的,我不知道任何能够做这种事情的编程语言:)
理想情况下,它应该是=IF($A3 $A$1 $B$1; $A3; NA())
......