条件判定 Select Case

こんにちは。伊川です。今回は、Select Caseについて解説します。条件判定で、処理が複数になる場合は、

Select Caseを利用するのが便利です。

このブログがお勧めの人

・VBAを理解し始めた人

・IF構文で条件判定後の処理が多くて困っている人

Select Caseの構文

Select Caseの雛形
Select Case A
Case 1
処理1
Case 2
処理2
Case 3
処理3
End Select

上記のように記載します。処理が多い場合は、このSelect Caseが威力を発揮します。

スポンサーリンク

Select Caseの利用例 その1

セルA1に、仮面ライダーと入力したら、セルB1に、ライダーキック

セルA1に、ウルトラマンと入力したら、セルB1に、スペシウム光線

セルA1に、ガンダムと入力したら、セルB1にビームライフル

セルA1に、それ以外が入力されたら、印籠

こんな条件式を記載したいと思います。

Select Caseの例1
Sub 必殺技()
Dim a As String
a = Range(“A1”)Select Case aCase “仮面ライダー”
Range(“B1”) = “ライダーキック”
Case “ウルトラマン”
Range(“B1”) = “スペシウム光線”
Case “ガンダム”
Range(“B1”) = “ビームライフル”
Case Else
Range(“B1”) = “印籠”
End Select
End Sub


上記が、Select Caseを利用した条件判定のコードの書き方です。

IF構文の例
Sub 必殺技()
If Range(“A1”) = “仮面ライダー” Then
Range(“B1”) = “ライダーキック”
ElseIf Range(“A1”) = “ウルトラマン” Then
Range(“B1”) = “スペシウム光線”
ElseIf Range(“A1”) = “ガンダム” Then
Range(“B1”) = “ビームライフル”
End If
End Sub

上記が、IF構文の書き方です。よく見と、同じようにも見えますが、

慣れてくると、Select Caseのがわかりやすいと思います。

Select Caseの利用例 その2

Select Caseが本当に便利に感じる瞬間を紹介します。

セルA3が、80~100のとき、セルB3に、優です。

セルA3が、70~79のとき、セルB3に、良です。

セルA3が、60~69のとき、セルB3に、可です。

セルA3が、0~59のとき、セルB3に、不可です。

セルA3に0 ~100以外のときは、エラーを表示する。

Select Caseの例2

Sub 範囲()

Dim b As Long
b = Range(“A3”)

Select Case b
Case 80 To 100
Range(“B3”) = “優です。”
Case 70 To 79
Range(“B3”) = “良です。”
Case 60 To 69
Range(“B3”) = “可です。”
Case 0 To 59
Range(“B3”) = “不可です。”
Case Else
MsgBox “点数は 0~100の数字で入力してください”

End Select
End Sub

上記の場合は、このようなコードになります。


エラーの場合


IF構文で、数字の範囲を指定するのは、すごく面倒なのですが、Select Caseは、数字の範囲を指定するのは、すごく簡単です。

まとめ

IF構文とSelect Caseをうまく使い分けて、処理を簡略化しましょう。

 

サンプルファイルNo5はです
スポンサーリンク

Twitterでフォローしよう

おすすめの記事