简而言之,如果你想做一个中频开关
a) 如果 A < 0.5 ... B = 10.
b) 如果 A >= 0.5 ... B = 15.
c) 如果 A > 1.0 ... B = 20。
怎么办呢?
小智 6
您可以像这样嵌套“if”表达式:
=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,IF(A1>1,20,"Something else")))
Run Code Online (Sandbox Code Playgroud)
(我添加了 A1<=1 否则,因为 A>1.0 意味着 A 也 >= 0.5)
这将用作 SWITCH 功能:-
=CHOOSE(IF(A1<0.5,1,IF(AND(A1>=0.5,A1<=1),2,3)),10,15,20)
Run Code Online (Sandbox Code Playgroud)
但这是在内部做嵌套 IF。
使用 3 路开关的最佳方法如下:-
=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,20))
Run Code Online (Sandbox Code Playgroud)
如果是最简单的方法来做到这一点。
一种更灵活的计算方法是利用 Excel 使用 True=1。假设值在 A1 中:
=((A1<0.5)*10)+((A1>=0.5)*15)+((A1>1)*20)
Run Code Online (Sandbox Code Playgroud)
这将允许您添加任意数量的条件,并使您摆脱嵌套的 IF。
这是有效的,因为在每个分组中,评估是一个返回 True 或 False 的逻辑函数,即如果小于(A1<0.5)
则返回。当在算术函数中使用 True 时,Excel 使用值 1。True
A1
0.5
我输入的上述示例并不完全正确,有些数字会为两个不同的组生成 True。中间组需要一个AND()
函数来限制,如:
AND(A1>=0.5,A1<=1)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19636 次 |
最近记录: |