- 公開日:2016-10-24
- プロナビTOP / プログラミング初心者向け技術系ノウハウ・まとめ

If文で条件分岐を行う方法についてご説明します。Ifを使用するとコードの流れを変更することが可能になるのでより柔軟な状況に対応できるプログラムを作成することができます。
<構文>
|
1 2 3 |
<pre class=“lang:default decode:true “>If 条件式 Then 条件を満たした場合に実行するコード End If</pre> |
目次
If文で条件付けを行う
<コード>
|
1 2 3 |
If Range(“A1”) <= 6 Then MsgBox “上半期のシートです。” End If |
Elseで条件に満たなかった場合の処理を実施
If文に続けてElseを記述することにより、条件式に適合しなかった場合の処理を行うことができます。
<コード>
|
1 2 3 4 5 |
If Range(“F4”) >= 20 Then MsgBox “ご購入ありがとうございます。” Else MsgBox “20歳未満の方にはご購入できない商品が含まれています。” End If |
また、Else文の後にIfで条件を記述することもできます。
<コード>
|
1 2 3 4 5 6 7 |
If 年齢 >= 20 Then MsgBox “選挙権があります。” ElseIf 年齢 >= 18 Then MsgBox “2016年夏より投票することができます。” ‘年齢が20未満かつ18以上の場合’ Else MsgBox “選挙権がありません。” ‘年齢が18未満の場合’ End If |
If文を入れ子にする
If文の中にIf文を記述することもできます。この場合入れ子になったIf文中のコードは外側のIf文の条件も満たしている場合に実行されます。
<コード>
|
1 2 3 4 5 6 7 8 9 10 |
If Range(“B2”) >= 4 Then If Range(“E4”) = “男” Then MsgBox “高学年の男子です。” Else MsgBox “高学年の女子です。” End If Else MsgBox “低学年生です。” End If |
<実行例>

なお、If文を多重にするとコードが見づらくなるのでTabキーなどで適宜字下げを行うと良いでしょう。
条件式の論理演算子
If文に2つ以上の条件を設定する方法についてご説明します。
複数の条件を設定することができればデータの抽出・加工をする際に非常に便利です。
それでは詳しい方法について確認していきましょう。
AND(論理積)による条件の結合
2つの条件の間をANDでつなげることにより、両方の条件を満たしている場合にコードが実行されます。
<コード>
|
1 2 3 |
If IsDate(Range(“C4”)) And Range(“D4”) = “第二回” Then ‘セルに入力された値が日付であり、かつ備考欄が第二回の場合’ MsgBox “第二回の受講が可能です。” End If |
OR(論理和) による条件の結合
2つの条件の間をORでつなぐことにより、どちらかの条件を満たしている場合にコードが実行されます。
<コード>
|
1 2 3 4 5 |
If Range(“C7”) = “土” Or Range(“C7”) = “日” Then ‘セルに入力された値が土曜または日曜の場合’ MsgBox “休日です。” Else MsgBox “平日です。” End If |
NOT(論理否定)による条件設定
条件の左にNOTを指定すると、条件を満たしていない場合にコードが実行されます。
<コード>
|
1 2 3 4 5 |
If Not IsDate(Range(“C4”)) Then ‘セルに入力された値が日付ではない場合’ MsgBox “免許を取得していません。” Else MsgBox “免許取得日:” & Range(“C4”) End If |
複数の論理演算子による複合的な条件の結合
論理演算子を複数組み合わせて複雑な条件式を作成することも可能です。
<コード>
|
1 2 3 |
If Range(“C5”) >= 10 And Not Range(“D5”) = “セット対象外” Then ‘在庫が10以上であり、かつ備考欄がセット対象外ではない場合’ MsgBox “10個セット販売が可能です。” End If |
まとめ
If文を使用すると複雑な条件に対応したコードを記述できるようになります。また意図しない動作を行わないために条件設定に漏れが無いか事前に検討しておくことも非常に大切です。
AND・OR・NOTの3つの論理演算子により様々な条件を設定することができますが、コードが読みづらいとメンテナンスが困難になりミスを誘発する原因にもなります。必要な箇所はコメントを記述し、意図が分かりやすいコードとなるよう心掛けましょう。






































