Zone de liste VBA

La zone de liste dans VBA est une liste qui est affectée à une variable et la liste a diverses entrées à sélectionner.Dans la zone de liste, nous pouvons sélectionner plusieurs options à la fois, la zone de liste peut être transformée en un formulaire utilisateur dans Excel VBA en sélectionnant la liste box et en le dessinant sur le formulaire utilisateur pour une zone de liste, nous avons une plage nommée qui contient certaines valeurs à sélectionner dans une zone de liste.

Qu'est-ce que la zone de liste dans Excel VBA?

Une zone de liste est une liste dans laquelle un utilisateur peut sélectionner un élément. La zone de liste dans Excel VBA peut être utilisée si vous souhaitez afficher une liste de valeurs parmi lesquelles les utilisateurs peuvent choisir.

Comment créer une zone de liste dans Excel?

Pour créer la zone de liste dans la feuille de calcul Excel, procédez comme suit:

Tout d'abord, vous devez activer l'onglet Développeur Excel visible sur le ruban afin de pouvoir accéder aux commandes de contrôle VBA et ActiveX. Pour obtenir l' onglet Développeur , affichez la boîte de dialogue Options Excel , cliquez sur Personnaliser le ruban dans Excel et cochez la case Développeur.

  • Cliquez sur le ruban Excel, sélectionnez l'onglet Développeur, puis cliquez sur Insérer, puis cliquez sur le contrôle Zone de liste pour insérer la nouvelle zone de liste dans la feuille de calcul Excel.

  • Après cela, dessinez un rectangle dans la feuille de calcul Excel pour créer la zone de liste dans Excel.

  • Tout en sélectionnant la zone de liste dans Excel, cliquez sur l'onglet développeur et sélectionnez les propriétés. La fenêtre Propriétés s'ouvre.

  • Dans la fenêtre Propriétés, pour le paramètre Plage de remplissage de la liste, entrez Days - la plage nommée avec les jours de la semaine.

  • Cliquez dans la propriété Multi Select, et dans la liste déroulante, sélectionnez 1-fmMultiSelectMulti comme indiqué dans la capture d'écran ci-dessous.

  • Cliquez dans la propriété Style de liste et dans la liste déroulante, sélectionnez 1-fmListStyleOption. Cela ajoute des cases à cocher à gauche des éléments de la liste, comme indiqué dans la capture d'écran ci-dessous.

  • Fermez la fenêtre Propriétés.

Vous pouvez fermer le mode Conception en cliquant sur le mode Conception.

Comment créer une zone de liste dans Excel VBA?

Vous pouvez considérer l'exemple suivant pour une meilleure compréhension de la zone de liste VBA:

Vous pouvez télécharger ce modèle Excel de boîtes de liste ici - Modèle Excel de boîtes de liste

Exemple 1

Pour lier cette zone de liste à une cellule, faites un clic droit sur la zone de liste (assurez-vous que le mode conception est sélectionné) et cliquez sur Propriétés. Remplissez B17 pour la cellule liée comme indiqué dans la capture d'écran ci-dessous.

Month List Name as Month allez dans les propriétés et sélectionnez List Fill range as Month.

 

Les données changeront dans la cellule B17 lorsque vous modifiez votre choix dans la zone de liste, comme indiqué dans la capture d'écran ci-dessous.

Exemple 2 - Comment créer une zone de liste sur un formulaire utilisateur?

  • Accédez à l'onglet développeur, puis cliquez sur Visual Basic à partir du code ou appuyez sur Alt + F11.

  • Allez dans le menu Insertion, cliquez sur UserForm.

  • Faites glisser le contrôle de zone de liste sur le formulaire utilisateur à partir de la boîte à outils.

  • Double-cliquez sur UserForm et sélectionnez l'événement Userform comme indiqué dans la capture d'écran ci-dessous.

  • Maintenant, ajoutez le code suivant à la procédure intermédiaire.

Sous-utilisateur privé UserForm_Initialize ()

ListBox1.AddItem «MBA»

ListBox1.AddItem «MCA»

ListBox1.AddItem «MSC»

ListBox1.AddItem «MECS»

ListBox1.AddItem «CA»

End Sub

 

  • Maintenant, appuyez sur «F5» pour exécuter le code.

Exemple # 3 - Comment ajouter un contrôle de zone de liste dynamique

Ajouter un contrôle de zone de liste dynamique sur le formulaire utilisateur à l'aide de VBA

  • Ajoutez un bouton de commande sur le formulaire utilisateur à partir de la boîte à outils.

  • Faites un clic droit sur le bouton de commande, cliquez sur Propriétés

  • Remplacez la légende du bouton de commande par «Create_Listbox»

  • Double-cliquez sur le bouton de commande
  • Maintenant, il montre le code suivant.

Sous privé CommandButton1_Click ()

End Sub

  • Appelez la procédure ci-dessous nommée 'Add_Dynamic_Listbox' et recherchez la procédure ci-dessous à exécuter.

Sous Add_Dynamic_Listbox ()

'Ajouter une zone de liste dynamique et l'assigner à l'objet' LstBx '

Définissez LstBx = UserForm3.Controls.Add («Forms.ListBox.1»)

'Position de la zone de liste

LstBx.Left = 20

LstBx.Top = 10

End Sub

  • Maintenant, cliquez sur F5 pour exécuter la macro.
Comment ajouter des éléments au contrôle de zone de liste dans VBA?

Sous-insertion privée _Items _To_LstBox ()

ListBox1.AddItem «Élément 1»

ListBox1.AddItem «Élément 2»

ListBox1.AddItem «Élément 3»

ListBox1.AddItem «Élément 4»

ListBox1.AddItem «Élément 5»

End Sub

Comment effacer les éléments du contrôle de zone de liste à l'aide de VBA?

Sous Clr_LstBx ()

UserForm3.ListBox1.Clear

End Sub

Exemple # 4

Supposons que nous ayons des données de ventes et que nous voulions les détails des ventes de l'interface utilisateur graphique en sélectionnant la sélection des éléments de la zone de liste. Ensuite, nous devons modifier la cellule d'index de sélection en tant que lien de cellule et appliquer la formule RECHERCHEV pour récupérer les détails des ventes comme indiqué dans les captures d'écran ci-dessous.

Choses à retenir à propos de la zone de liste dans Excel VBA

Une zone de liste dans Excel peut être utilisée pour sélectionner plusieurs éléments.