条件分岐② 条件分岐を追加

条件分岐は入れ子にすれば無限に分岐を増やせます。


IF関数の書式

 if(条件式 , 選択肢1 , 選択肢2)
IF関数の基本的な使い方、考え方についてはこちらを参照。

分岐を追加

IF関数は提示した条件が成立しているか、不成立なのかの判定により結果を2つに分岐する関数です。「もしもAだったら1、それ以外なら2の値を選択する」というのが基本になりますが、実際には「もしもAだったら1、そうでなくてBだったら2、そうでなくてⅭだったら3」といった2つにひとつよりも多くの組み合わせが起こります。
分岐を増やすには、IF関数の中にIF関数を入れ子にすれば、2つ以上の組み合わせにも対応できるようになります。

3つに分岐する方法

”もしも「長さ」パラメータがAならば1、そうでなくてBならば2、ABどちらでもなかったら3”を例に、IF関数を入れ子にする方法を説明します。

①まずは「もしも長さがAならば1、そうでなくてBならば2」を作ります。
➡ if(長さ=A , 1 ,2)
※Bだったらの「B」は直接式には出てきません。
なぜならば選択肢2の方はA以外の全てなのでその中に「B」も含まれているからです。

②選択肢1は、長さが「A」に限定された場合の値なのに対し選択肢2の方は「長さ=A」以外の全ての状況をさしています。
そこで選択肢2の部分を「もしも長さがBならば2、そうでなければ3」という内容にすれば、「B」ならば2、どちらでもなければ3という状況が作れます。
では「もしも長さがBだったら2、そうでなければ3」を作りましょう。
if(長さ=B , 2 ,3)

③ではif(長さ=B , 2 ,3)をif(長さ=A , 1 ,2)に挿入してみましょう。
➡if(長さ=A , 1 ,if(長さ=B , 2 ,3))

分岐をどんどん増やす

IF関数は、入れ子にすれば、何段階にも分岐させることができます。

 if(条件式1 , 選択肢1 ,  if(条件式 2, 選択肢2 ,  if(条件式3 , 選択肢3 , 選択肢4)))

↑↑上記の式は「もしも条件式1ならば選択肢1、そうでなくて条件式2ならば選択肢2、そうでなくて条件式3ならば選択肢3、それ以外なら選択肢4」を意味しています。

例えば・・

「Hの値を決める場合の条件が、Wが300の時は400、そうでなくてWが300より大きい時は500、そうでなくてWが400の時は600、それ以外なら700」をif関数で表すと以下になります。

 if(W=300 , 400 ,  if(W>300, 500 ,  if(W=400, 600 , 700)))


分岐は入れ子にすることで無限に増やせますが、入れ子状態が多くなりすぎると処理に時間が掛かる、修正する時に読み解くのが複雑になるなどマイナス面もあるので、ほどほどに☆彡


Revit2020