Déclaration du commutateur VBA

Cet article explique comment utiliser l'instruction VBA Switch.

L'instruction VBA Switch est utilisée de la même manière que l'instruction VBA Select Case.

La syntaxe de l'instruction Switch

L'instruction switch évalue une liste d'expressions pour voir si elles sont vraies ou fausses, et renvoie la valeur des premières expressions évaluées comme vraies. La liste d'arguments est composée de paires - une expression et une valeur qui est renvoyée si l'expression est évaluée comme étant vraie.

Changer(expr-1, valeur-1, [ expr-2, valeur-2… , [ expr-n, valeur-n ]])

Utilisation de l'instruction Switch dans une procédure VBA

L'utiliser dans une macro pourrait être similaire à l'exemple ci-dessous :

1234567 Sous-TestSwitch()Dim strCompany As StringDim CompanyID en tant qu'entierID de l'entreprise = 2strCompany = Switch(CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strEntreprisesFin du sous-marin

Nous déclarons une variable entière pour contenir les valeurs des expressions dans l'instruction switch. Nous déclarons ensuite une autre variable de chaîne pour renvoyer la valeur contenue dans cette expression.

Utilisation de l'instruction Switch avec une plage

Au lieu de coder en dur la valeur que le commutateur va évaluer dans le code, nous pouvons utiliser une valeur que nous avons stockée dans une cellule Excel pour renvoyer la chaîne dont nous avons besoin.

1234567 Sous-TestSwitch()Dim strCompany As StringDim CompanyID en tant qu'entierID de l'entreprise = Plage("A2")strCompany = Switch(CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strEntreprisesFin du sous-marin

Pour utiliser cette procédure, nous aurions besoin d'un nombre dans la cellule A2 de la feuille de calcul. Nous pouvons ensuite exécuter la macro pour obtenir le nom de l'entreprise (c'est-à-dire Samsung).

Si nous n'avons pas de nombre dans la cellule A3 et que nous exécutons le code, une erreur de non-concordance de type sera renvoyée.

Création d'une fonction personnalisée avec le commutateur VBA

Nous pouvons également créer une fonction personnalisée à l'aide du commutateur VBA et l'utiliser dans notre classeur.

123 Fonction SwitchStatement(i As Integer) As StringSwitchStatement = Switch(i= 1, "Apple", i= 2, "IBM", i= 3, "Samsung")Fonction de fin

Pour l'utiliser dans notre classeur, nous pouvons utiliser la boîte de dialogue Insérer une fonction.

Cliquez dans la cellule A3 puis cliquez sur Insérer une fonction dans la barre de fonctions.

Dans la boîte de dialogue Insérer une fonction, sélectionnez Défini par l'utilisateur du Sélectionnez la liste déroulante Catégorie, puis sélectionnez SwitchStatement.

Cliquez sur D'ACCORD, puis cliquez sur la cellule A2.

Le nom de l'entreprise, tel qu'il est stocké dans la déclaration de changement, sera renvoyé à notre feuille de calcul.

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave