Comment utiliser la fonction Switch dans VBA ?

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.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project