Comment remplir ou charger ComboBox avec un tableau à partir d’un vecteur dans Excel sans répéter les données
Si vous avez besoin de remplir ou de charger des données dans une zone de liste déroulante avec un tableau de vecteur dans Excel , vous devrez probablement le faire sans répéter aucune donnée. Le remplissage ou le chargement de la zone de liste déroulante avec un vecteur permettra à nos données d’être visualisées de manière plus confortable.
Les tableaux sont un ensemble de valeurs du même type et les vecteurs sont des tableaux unidirectionnels, avant de travailler avec des vecteurs, il est important que vous appreniez ce que sont les vecteurs dynamiques et comment ils sont utilisés et sous quels préservatifs sont utilisés et comment les redimensionner.
Cela peut sembler assez compliqué pour ceux qui ne gèrent pas la bonne méthodologie , et ce tableur a tellement de fonctions qu’il est difficile de les connaître toutes.
Configurer la ComboBox
Pour commencer, vous devez avoir les informations que vous souhaitez ajouter à la ComboBox bien ordonnées, une liste dans un tableau serait la meilleure façon.
Maintenant, la chose suivante est d’ouvrir ou d’accéder à Visual Basic Editor , soit via l’onglet « Développeur » ou avec les commandes « Alt + F11 ».
Ensuite, à l’intérieur de l’éditeur, recherchez le bouton » Insérer » situé sur le ruban supérieur, et parmi les options affichées, vous choisissez celui appelé » UserForm «.
De cette façon, il y aura une fenêtre pop-up, où l’élément « Combo Box » sera ajouté à partir du menu inférieur de « Contrôles ».
Ensuite, dans la partie inférieure gauche de l’écran, le nom de la boîte peut être changé en ce que l’utilisateur veut. L’étape suivante consiste à double-cliquer sur la fenêtre du formulaire.
Ainsi, les paramètres UserForm s’ouvriront où, sur le côté droit, il y aura une flèche avec les » Evénements «, à partir de laquelle » Initialiser » est choisi . Cette action ajoutera les données pertinentes à la fenêtre, où elle commencera à créer le code pertinent pour ce que nous recherchons.
Le code
Dans ce cas, nous commencerons par écrire une série de variables qui fourniront et permettront au formulaire de fonctionner correctement . Pour cela, il doit être rempli comme suit:
Sous-utilisateur privé UserForm_Initialize ()
Dim UniqueValue As Collection
Dim eng As Range
Dim cellule en tant que plage
Dim sh comme feuille de calcul
Dim vNum comme variante
Définir sh = ThisWorkbook.Worksheets («Sheet1»)
Définir Rng = sh.Range («D4», sh.Range (D4) .End (x1Down))
Définir UniqueValue = Nouvelle collection
En cas d’erreur Reprendre suivant
Pour chaque cellule des cellules Rng.
UniqueValue.Add cell.Value, CStr (cell.Value)
Cellule suivante
En cas d’erreur GoTo 0
Pour chaque vNum dans UniqueValue
Me.UserForm.AddItem vNum
VNum suivant
Pour terminer, sélectionnez l’icône « Jouer », la flèche verte, « Continuer » ou « F5 » pour exécuter la ComboBox, et de cette façon, cela nous mènera directement à la feuille de calcul.
Comment fonctionne ce code?
L’importance d’écrire le code présenté ci-dessus est qu’il contient certains éléments qui permettent aux données de la zone de liste déroulante Excel de ne pas être répétées.
En ce sens, les commandes doivent être pleinement respectées. En fait, l’une des variables qui continuent à omettre les enregistrements répétés est » On Error Resume Next «.
En outre, le » On Error GoTo 0 «, de la même manière influence la façon dont le formulaire procédera pour prendre les données qui ne sont pas uniques. Maintenant, quelque chose qui doit être pris en compte est le nom de la feuille sur laquelle on travaille.
Parce que? Eh bien, parce que son titre doit être écrit tel quel dans la ligne « Set sh = ThisWorkbook.Worksheets (« Sheet1 ») » du code. Être » Sheet1 » simplement un exemple.
En plus de cela, quant au nom que nous avons donné à la ComboBox, il sera également indispensable de s’en souvenir et de l’utiliser correctement.
Depuis, il doit être écrit dans la partie du code qui dit » Me.UserForm.AddItem vNum «, en remplaçant le » UseForm » par le titre qui a été choisi.
Et de cette manière, un ComboBox Excel aura été ajouté là où les valeurs ou données chargées ne sont pas répétées.
Bien que, comme on l’a vu, cette procédure soit généralement mise en pratique par des utilisateurs qui maîtrisent déjà les fonctions que cet outil de calcul inclut.
Par conséquent, si vous souhaitez continuer à travailler avec ce type de processus, vous devrez peut-être suivre un type de cours Excel ou vous consacrer à l’étude de toutes les possibilités basées sur des essais et des erreurs.
Tout comme les ComboBox fonctionnent avec des vecteurs, ils peuvent également fonctionner avec des données de plage. Les données de plage peuvent également être transmises sans répétition .