L’instruction `Select Case` en VBA (Visual Basic for Applications) est utilisée pour exécuter différents blocs de code en fonction de la valeur d’une expression. Elle est souvent préférée aux instructions `If…ElseIf…Else` lorsqu’il y a plusieurs conditions à évaluer, car elle peut rendre le code plus lisible et plus facile à gérer.
Voici la structure générale de l’instruction `Select Case` :
Select Case expression
Case valeur1
' Bloc de code à exécuter si expression = valeur1
Case valeur2
' Bloc de code à exécuter si expression = valeur2
Case valeur3
' Bloc de code à exécuter si expression = valeur3
Case Else
' Bloc de code à exécuter si aucune des valeurs ci-dessus ne correspond
End Select
Voici un exemple pratique :
Sub ExempleSelectCase()
Dim jour As Integer
jour = 3
Select Case jour
Case 1
MsgBox "Lundi"
Case 2
MsgBox "Mardi"
Case 3
MsgBox "Mercredi"
Case 4
MsgBox "Jeudi"
Case 5
MsgBox "Vendredi"
Case 6
MsgBox "Samedi"
Case 7
MsgBox "Dimanche"
Case Else
MsgBox "Valeur invalide"
End Select
End Sub
Dans cet exemple, l’affichage du message dépend de la valeur de la variable `jour`. Si `jour` vaut 3, alors le message “Mercredi” sera affiché.
Vous pouvez également utiliser des plages de valeurs ou des expressions plus complexes dans chaque `Case`, comme ceci :
Sub ExempleSelectCaseComplex()
Dim note As Integer
note = 85
Select Case note
Case 0 To 49
MsgBox "Échec"
Case 50 To 64
MsgBox "Passable"
Case 65 To 79
MsgBox "Bien"
Case 80 To 100
MsgBox "Très bien"
Case Else
MsgBox "Note invalide"
End Select
End Sub
Ici, le message dépend de la plage dans laquelle se situe la variable `note`. Ce type de structure permet une gestion plus flexible et intuitive des conditions multiples.