VB2019 VB2017 VB2015 VB2013 VB2012 VB2010 VB2008 VB6 VB Sample Code 中文VB About Us

Lesson 10: Select Case


In the previous lesson, we have learned how to control the program flow using the If...ElseIf control structure. In this chapter, you will learn  another way to control the program flow, that is, the Select Case control structure. However, the Select Case control structure is slightly different from the If....ElseIf control structure . The difference is that the Select Case control structure basically only make decision on one expression or dimension (for example the examination grade) while the If ...ElseIf statement control structure may evaluate only one expression, each If....ElseIf statement may also compute entirely different dimensions. Select Case is preferred when there exist many different conditions because using If...Then..ElseIf statements might become too messy.

10.1 The Select Case...End Select Structure

The structure of the Select Case control structure is show below:

Select Case test expression

   Case expression list 1
        Block of one or more VB statements
   Case expression list 2
        Block of one or more VB Statements
   Case expression list 3
        Block of one or more VB statements
   Case expression list 4
        .
        .
        .
   Case Else
        Block of one or more VB Statements

End Select


Example 10.1

' Examination Grades

Dim grade As String

Private Sub Compute_Click( )

grade=txtgrade.Text

Select Case grade

  Case  "A"

       Label1.Text="High Distinction"

  Case "A-"

      Label2.Text="Distinction"

  Case "B"

        Label3.Text="Credit"

  Case "C"

        Label4.Text="Pass"

  Case Else

        Label5.Text="Fail"

  End Select


Example 10.2

In this example, you can use the keyword Is together with the comparison operators.


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click


'Examination Marks


Dim mark As Single

 mark = mrk.Text

Select Case mark

 Case Is >= 85

     Label1.Text= "Excellence"

Case Is >= 70

    Label2.Text= "Good"

Case Is >= 60

   Label3.Text = "Above Average"

Case Is >= 50

Label4.Text= "Average"

Case Else

Label5.Text = "Need to work harder"

End Select


End Sub


Example 10.3

Example 10.2 could be rewritten  as follows:

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

'Examination Marks

Dim mark As Single

 mark = mrk.Text  

Select Case mark

 Case 0 to 49

     Label1.Text = "Need to work harder"

Case 50 to 59

Label2.Text = "Average"

Case 60 to 69

   Label3.Text= "Above Average"

Case 70 to 84

Label4.Text = "Good"

Case Else

Label5.Text= "Excellence"

End Select

End Sub



Copyright©2008 Dr.Liew Voon Kiong. All rights reserved |Contact|Privacy Policy