Excel VBAの条件分岐(If文)
Excel VBAは、Microsoft Excelで使用できるプログラミング言語です。
Excelをより効率的に使用するためのプログラミング言語です。Excelをもっと便利に使いたい人におすすめのプログラミング言語です。Excel VBAを覚えると、Excelの作業が楽になります
具体的に出来ることは以下のとおりです。
- Excelの操作を自動化
- 独自の機能を作成
- データの分析・処理
- レポートの作成
- フォームの作成
- マクロの作成
このExcel VBAというカテゴリーでは、私が学んだExcel VBAのコツやテクニックを紹介していきます。
今回は、Excel VBAの条件分岐(If文)の使い方を今回ご紹介します。
Excel VBAの条件分岐(If文)の使い方
Excel VBAの条件分岐(If文)とは
「もし◯◯なら□□を行う、そうでなければ☓☓を行う」といった処理を、条件分岐と言います。
もし雨が降ったら、家で過ごす、そうでなければ外出する、そんな感じです。
Excel VBAで条件分岐を行う場合、If文を使用します。
If文を使う際に、覚えておくのは、真の場合はTrue 、偽の場合はFalseという言葉を使うことです。
これはエクセル関数であるIF関数を使用したことがある方なら分かると思います。
さてExcel VBAのIf文の書式ですが、2つあります。
①真の場合…Trueのみ処理する書く場合
真の場合…Trueのみ処理する書く場合は以下のように書きます。
If 条件式 Then
Trueの場合の処理
End If
②偽の場合…Falseの処理も書く場合
偽の場合…Falseの処理も書く場合は以下のように書きます。
If 条件式 Then
Trueの場合の処理
Else
Falseの場合の処理
End If
Excel VBAの条件分岐(If文)の具体例① 金額が5,000円以下の場合は送料欄に500円を表示する
以下の表で、Excel VBAのIf文で金額が5,000円以下の場合は送料欄に500円を表示するということを行ってみます。
コードは以下の通りになります。
Range(“F2”).Value < 5000が、金額が5,000円以下の場合という条件式になります。
Range(“G2”).Value = 500が、Trueの場合の処理の処理になります。
F5キーを押して、実行すると以下のように、送料500円が表示されています。
Excel VBAの条件分岐(If文)の具体例② 最終行まで計算するという表を、If文を使用して、金額が2,000円以下の場合は送料500円を表示する
では応用編として、実際に前回のブログ記事(Excel VBAで最終行を取得する方法【初心者向け】)作成した最終行まで計算するという表を、If文を使用して、金額が2,000円以下の場合は送料500円を表示する、ということを行います。
コードは以下のようになります。
前回同様、最終行まで計算させるために、Range(“F” & i)というように& iを入力します。
F5キーを押して、実行すると以下のように、送料500円が表示されています。
この実行結果だと、送料500円は表示されますが、空欄の部分が出てしまいます。なのでこの空欄部分を0と表示させるようにします。
コードは以下の通りです。
Elseと入力し、改行し
Falseの場合の処理である、Range(“G” & i).Value = 0を入力します。
F5キーを押して、実行すると以下のように、空欄が0が表示されます。