| Excel VBAでの条件分岐 ・IF〜Then(Excel VBA)
条件を満たせば実行する。
Cells(line, 11)の値が無ければ「値なし」を代入。値があれば文字の色を青色にする。
If Cells(line, 11).Value = "" Then
Cells(line, 11).Value="値なし"
Elseif Cells(line, 11).Value = "○" Then
Cells(line, 11).Font.ColorIndex = 3
Else
Cells(line, 11).Font.ColorIndex = 5
End If
複数条件を使用するときはElseifをElsifと間違えないように。
[比較演算子]
= 等しい
<> 等しくない
< より小さい
<= 以下
> より大きい
>= 以上
[関係演算子]
And 条件式の両方を満たした時
Or 条件式のどちらかを満たした時
Not 条件式を満たさない時
IF関数(Excel関数)
通常のIF関数についても記載しておく。
=IF(AND(A1>=0,A1<=30),"×","○")
A1の値が0以上かつ(AND)30以下だったら×を記載、それ以外だったら○を記載する。
VBAのElseifのような複数条件を実現したい場合は、IFの条件式に当てはまらない時の処理、ここでは"○"のところにIF文をつなげる。
=IF(AND(A1>=0,A1<=30),"×",IF(AND(A1>30,A1<=60),"△","○")))
A1の値が0以上かつ(AND)30以下だったら×を記載、それ以外でA1の値が30より大きくかつ60以下なら△を記載、それ以外であれば○を記載する。
"○"の部分にIF文を入れていけばさらに条件を加えることができる。
・Select Case
複数条件での処理を実行する。
Select Case Cells(line, 11).Value
Case 1,3
MsgBox "1,3です"
Case 2,4
MsgBox "2,4です"
Case Else
MsgBox "それ以外です"
End Select
Select Case Cells(line, 11).Value
Case 1 To 3
MsgBox "1〜3です"
Case 4 To 7
MsgBox "4〜7です"
Case Else
MsgBox "それ以外です"
End Select
Select Case Cells(line, 11).Value
Case Is < 3
MsgBox "3以下です"
Case Is< 7
MsgBox "4〜7です"
Case Else
MsgBox "それ以外です"
End Select
|
|