●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

VBのSelect Case文について

Visual Basic(VB)における Select Case文 は、変数の値に応じて処理を分岐するための制御構文です。複数の If 〜 ElseIf を使うよりも、条件が単一の値に基づく場合にはコードがすっきりします。

Select Caseの基本構文

Select Case 式
    Case 値1
        ' 値1のときの処理
    Case 値2
        ' 値2のときの処理
    Case Else
        ' どのCaseにも該当しないときの処理
End Select

例:

Dim grade As String = "B"

Select Case grade
    Case "A"
        MsgBox("とても良い")
    Case "B"
        MsgBox("良い")
    Case "C"
        MsgBox("普通")
    Case Else
        MsgBox("評価なし")
End Select

Caseに複数の値を指定する

Case にカンマで複数の値を指定すると、どれかに一致すればその処理が実行されます。

Dim day As String = "土曜日"

Select Case day
    Case "土曜日", "日曜日"
        MsgBox("週末です")
    Case Else
        MsgBox("平日です")
End Select

数値の範囲を指定する(To句)

To を使うと、範囲に一致する条件を簡単に書けます。

Dim score As Integer = 85

Select Case score
    Case 90 To 100
        MsgBox("優秀")
    Case 70 To 89
        MsgBox("合格")
    Case Else
        MsgBox("不合格")
End Select

条件式に一致させる(Is句)

Is を使って「より大きい」「より小さい」といった条件も記述できます。

Dim age As Integer = 20

Select Case age
    Case Is < 13
        MsgBox("子ども料金")
    Case Is < 65
        MsgBox("大人料金")
    Case Else
        MsgBox("シニア料金")
End Select

Case Else の役割

Case Else は、すべての条件に当てはまらなかった場合の処理を記述します。必須ではありませんが、書いておくと安心です。

実用例:曜日によってメッセージを表示

Dim today As String = "火曜日"

Select Case today
    Case "月曜日"
        MsgBox("1週間の始まりです")
    Case "金曜日"
        MsgBox("もうすぐ週末!")
    Case "土曜日", "日曜日"
        MsgBox("ゆっくり休みましょう")
    Case Else
        MsgBox("今日もがんばりましょう")
End Select

If文との違い

条件が「特定の値」によって分かれるときは Select Case の方が読みやすく、複雑な条件式(数式や論理式)には If文 が向いています。使い分けることで、より見やすく効率的なコードが書けます。

まとめ

Select Case文は、変数の値によって処理を分けたいときに便利な構文です。ToIs、複数の値指定、Case Else などを活用することで、シンプルで見通しの良いプログラムが作れます。複数のIf文で混乱しがちな場面では、Select Caseに置き換えてみましょう。