![](https://codky.com/wp-content/uploads/2024/11/2676-1024x576.png)
La fonction `Switch` dans VBA (Visual Basic for Applications) est utilisée pour évaluer une liste d’expressions et renvoyer une valeur correspondante à la première expression vraie. C’est une façon pratique de remplacer plusieurs instructions `If…Then…Else` lorsqu’on travaille avec de multiples conditions. Voici comment vous pouvez l’utiliser :
Syntaxe
Switch(expression1, valeur1, expression2, valeur2, ..., expressionN, valeurN)
- `expression1`, `expression2`, …, `expressionN` : Ces expressions sont évaluées dans l’ordre. Elles doivent toutes renvoyer un `True` ou `False`.
- `valeur1`, `valeur2`, …, `valeurN` : Ce sont les valeurs correspondantes qui seront renvoyées lorsque l’expression associée est vraie.
Exemple d’utilisation
Imaginons que vous ayez besoin de catégoriser des scores :
Function CategorizeScore(score As Integer) As String
CategorizeScore = Switch( _
score >= 90, "Excellent", _
score >= 75, "Bien", _
score >= 50, "Passable", _
score < 50, "Insuffisant" _
)
End Function
Explication
- Si `score` est de 90 ou plus, la fonction renvoie “Excellent”.
- Si `score` est de 75 ou plus mais inférieur à 90, elle renvoie “Bien”.
- Si `score` est de 50 ou plus mais inférieur à 75, elle renvoie “Passable”.
- Si `score` est inférieur à 50, elle renvoie “Insuffisant”.
Points à Noter
- Première Expression Vraie : La fonction `Switch` renvoie la valeur de la première expression qui est vraie. Si aucune expression n’est vraie, la fonction renvoie `Null`.
- Aucun Case Identique : Si plus d’une expression peut être vraie, seulement la valeur de la première rencontre sera utilisée.
- Evaluation de Toutes les Expressions : Même si une condition plus tôt dans la liste est vraie, `Switch` continue d’évaluer toutes les expressions. Cela peut conduire à des erreurs si certaines expressions ne sont pas évaluables dans certains contextes.
- Gestion des Erreurs : Comme toutes les expressions sont évaluées et doivent être valides, assurez-vous que la liste des expressions évité des erreurs d’exécution potentielles.
En résumé, la fonction `Switch` est un outil utile pour simplifier des décisions conditionnelles basées sur plusieurs cas dans vos projets VBA.