VBA IF文 いくつかの条件で処理を分ける
If 条件1 Then
条件1を満たす時の処理
ElseIf 条件2 Then
条件2を満たす時の処理
ElseIF 条件3 Then
・・
Else
条件をすべて満たさない時の処理
EndIf
例えば、部品の値段設定で
1000個以上は 900円
1000個未満は 1,050円
とすると
If IntQty >= 1000 Then
IntPrice = 900
ElseIf IntQty < 1000 Then
IntPrice = 1050
End if
こういう書き方になります。
実際にお仕事などで使う時はもっと複雑な条件設定になりますね。
VBA IF文 条件を満たさない時に処理する
IF文は、 条件を満たさない時も処理してくれます。
基本的には
If 条件 Then
条件を満たす時の処理
Else
条件を満たさない時の処理
End if
先ほどのIF文と違うところは
Else
ですね。
具体的には、
Sub jouken()
If IsError(Range("B4")) = True Then
MsgBox "合格基準の点数を入力してください"
Else
Range("C4").Interior.ColorIndex = 8
End If
End Sub
セルB4に何も値を入れずに実行すると・・・・
と聞いてきます。
セルB4に、何にも入っていないので、文句をいってきますね^^
とりあえず、「OK」を押します。実行終了です。
セルB4に値が入っていたら、↓のようにセルC4に色をつけます。
意外と簡単ですよね。
条件式が正しくないと、 正しい結果を返さないので注意が必要です。
でも、、、条件式を作る時に結構間違えたりするんですよ
うふふ
だから、ステップ実行で、切り分けて実行結果をひとつひとつ確かめることをお勧めします。
エクセルマクロ(VBA)の作り方講座(Excel2007版)
