ホーム > プログラミング入門 > Lesson8: 制御構造 Select Case

制御構造 Select Case
制御構造 Select Case 制御構造 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 制御構造 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点以上のとき
実行結果1
50点以上(80点未満)のとき
実行結果2
30点以上(50点未満)のとき
実行結果3
それ以外(30点未満)のとき
実行結果4
2004年8月