制御構造 Select Case
If Then ElseIf Then でたくさんの条件で分岐することが出来ました。
Select Case を使うともっと見やすくなります。
やることは同じですが、見た目がシンプルに。
Select Case 対象
Case 条件式1
処理1
Case 条件式2
処理2
Case 条件式3
処理3
Case Else
処理4
End Select
条件式1を満たすとき処理1
条件式1を満たさないで条件式2を満たすとき処理2
条件式1、2を満たさないで条件式3をみたすとき処理3
その他(条件式1、2、3を満たさない)とき処理4
この表を使ってみました。
「D3」が80点以上なら、「D3」を青。
50点以上なら、緑。
30点以上なら、黄。
それ以外(30点未満)なら、赤を塗ることします。
流れ図(フローチャート)にすると、If Then ElseIf のときと同じで
これを見て、プログラムを作ります。
2004年8月
制御構造 Select Case その2
Sub test_09()
'制御構造 Secelt Case の勉強中
Select Case Range("D3").Value
Case Is >= 80
Range("D3").Interior.ColorIndex = 37
Case Is >= 50
Range("D3").Interior.ColorIndex = 35
Case Is >= 30
Range("D3").Interior.ColorIndex = 36
Case Else
Range("D3").Interior.ColorIndex = 38
End Select
End Sub
"D3"が80以上のとき、"D3"のセルの37の色を塗る
"D3"が50以上(80未満)のとき、"D3"のセルの35の色を塗る
"D3"が30以上(50未満)のとき、"D3"のセルの36の色を塗る
それ以外(30未満)のとき、"D3"のセルに38の色を塗る
このプログラムを動かしてみると、80点以上のとき
50点以上(80点未満)のとき
30点以上(50点未満)のとき
それ以外(30点未満)のとき
2004年8月