Comment : tester plusieurs valeurs d'une expression (Visual Basic)

Si vous comparez la même expression à plusieurs valeurs différentes, vous pouvez utiliser la construction Select...Case, instruction (Visual Basic) plutôt que la construction If...Then...Else, instruction (Visual Basic). Tandis que les instructions If et ElseIf permettent d'évaluer une expression différente dans chaque instruction, l'instruction Select évalue une expression unique une seule fois et l'utilise pour chaque comparaison.

Pour évaluer une expression une fois et tester plusieurs valeurs

  • Utilisez la construction Select...Case pour spécifier l'expression et les valeurs à tester. Chaque instruction Case peut contenir une ou plusieurs valeurs, une plage de valeurs ou une combinaison de valeurs et d'opérateurs de comparaison. Vous pouvez utiliser une instruction Case Else pour gérer toutes les valeurs non testées par les instructions Case précédentes. L'exemple de code suivant illustre ces possibilités.

    Function bonus(ByVal performance As Integer, 
                   ByVal salary As Decimal) As Decimal
        Select performance
            Case 1
                Return salary * 0.1
            Case 2, 3
                Return salary * 0.09
            Case 5 To 7
                Return salary * 0.07
            Case 4, 8 To 10
                Return salary * 0.05
            Case Is < 15
                Return 100
            Case Else
                Return 0
       End Select
    End Function
    

    Visual Basic compare la valeur de l'expression aux valeurs des instructions Case selon leur ordre d'apparition dans la construction Select...Case. S'il trouve une correspondance ou une instruction Case Else, il exécute le bloc d'instructions correspondant. Dans tous les cas, l'exécution passe ensuite à l'instruction suivant l'instruction End Select.

    Vous pouvez avoir un nombre quelconque d'instructions Case et vous pouvez inclure ou omettre une instruction Case Else même s'il n'y a aucune instruction Case.

Un exemple de code pour la construction Select...Case est également disponible en tant qu'extrait de code IntelliSense. Dans le sélecteur d'extrait de code, il se trouve en Langage Visual Basic. Pour plus d'informations, consultez Comment : insérer des extraits de code IntelliSense.

Voir aussi

Tâches

Comment : transférer un contrôle hors d'une structure de contrôle (Visual Basic)

Comment : exécuter des instructions en fonction d'une ou de plusieurs conditions (Visual Basic)

Comment : conserver le contrôle si une erreur se produit (Visual Basic)

Concepts

Structures de décision (Visual Basic)

Structures de boucle (Visual Basic)

Autres structures de contrôle (Visual Basic)

Structures de contrôle imbriquées (Visual Basic)

Autres ressources

Flux de contrôle en Visual Basic