ifをつなげる
いくつかのif文を連結させることで、さらに複雑な条件分岐が出来るようになります。たとえば、入力した数が90以上だったら「レベルA」、50以上90未満だったら「レベルB」、50未満なら「レベルC」と表示するようにしてみましょう。
str = InputBox("値を入力してください") num = CInt(str) if( num >= 90 ) then MsgBox "レベルA" elseif( num >= 50 ) then MsgBox "レベルB" else MsgBox "レベルC" end if

最初のif文で90以上かどうかを判断し、90以上なら「レベルA」と表示しています。
そうでない場合、つまり90未満のときにその下の「elseif」と書かれたところの条件を判断します。
numが50以上かどうかを調べ50以上なら「レベルB」と表示します。numが90未満のときにしかこの条件は判断しません。だから90未満で50以上の時に「レベルB」と表示されます。
このようにelseifをif文の後に書くことでif文を連続させることが出来ます。elseifは何個も続けることが出来ます。
50以上でもないときには最後のelse文の命令を実行します。このようにelseifで連続する条件式のどれにも当てはまらないときには最後のelseを実行するわけです。
結果、以下のような表示になります。
90以上:レベルA
50以上90未満:レベルB
50未満:レベルC
このようにelseifでいくつもif文をつなげていくことが出来るわけです。
☆if文の書き方3 if (条件式1) then 条件式1が正しいときの命令 elseif (条件式2) then 条件式1が正しくなくて条件式2が正しいときの命令 elseif (条件式3) then 条件式1,2ともに正しくなくて条件式3が正しいときの命令 else 条件式1,2,3がすべて正しくないときの命令 end if
間違いやすい点:elseifのelseとifの間に空白を入れないようにしてください。else ifではだめです。elseif と連続して書きます。
問題6-5
年齢を入力し、入力された年齢が20才以上であれば「お酒が飲めます」と「免許が取れます」、18才以上20才未満の時は「免許が取れます」、18才未満の時は「未成年です」と表示しよう。