つまり、IFスイッチを作りたい場合
a) A < 0.5 の場合... B = 10。b
) A >= 0.5 の場合... B = 15。c
) A > 1.0 の場合... B = 20。
それをどうしたらいいでしょうか?
答え1
これはSWITCH関数として機能します:-
=CHOOSE(IF(A1<0.5,1,IF(AND(A1>=0.5,A1<=1),2,3)),10,15,20)
しかし、これは内部的にネストされた IF を実行しています。
3 ウェイ スイッチを使用する最適な方法は次のとおりです。
=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,20))
答え2
次のように「if」式をネストできます。
=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,IF(A1>1,20,"Something else")))
(A>1.0 は A >= 0.5 を意味するため、それ以外の場合は A1<=1 を追加しました)
答え3
これがこれを行う最も簡単な方法です。
より柔軟な計算方法は、Excel の True=1 の使用を活用することです。値が A1 にあると仮定します。
=((A1<0.5)*10)+((A1>=0.5)*15)+((A1>1)*20)
これにより、任意の数の条件を追加できるようになり、ネストされた IF から抜け出すことができます。
これが機能するのは、各グループ化において評価が True または False を返すロジック関数であるためです。つまり、 がより小さい場合は を(A1<0.5)
返します。Excel では、算術関数で True が使用される場合、値 1 が使用されます。True
A1
0.5
AND()
私が示した上記の例は正確ではありません。一部の数値は 2 つの異なるグループに対して True を生成します。中間のグループには、次のような制限関数が必要です。
AND(A1>=0.5,A1<=1)
答え4
最短の解決策は次のようになります。
=IF(A1<0.5,10,IF(A1<=1,15,20))
最初の部分により、2 番目の部分の AND は不要です。