Supprimer Doublons liste déroulante VBA
Résolu
DEl
-
DEl -
DEl -
Bonjour,
J'ai créé une liste déroulante en code VBA sur excel, mais a chaque nouvelle entrée la liste se duplique comment faire pour eviter que cela se produise ?
voila le code tapé sur vba :
Merci d,'avance !
J'ai créé une liste déroulante en code VBA sur excel, mais a chaque nouvelle entrée la liste se duplique comment faire pour eviter que cela se produise ?
voila le code tapé sur vba :
'Paramètres de la liste déroulante unités
Private Sub userform_Activate()
With Me.zlmUnité
.AddItem ("pièce")
.AddItem ("kg")
.AddItem ("litre")
End With
End Sub
Merci d,'avance !
4 réponses
-
Bonjour,
Il faut Clear votre liste avant de la re-remplir :
'Paramètres de la liste déroulante unités Private Sub userform_Activate() With Me.zlmUnité .Clear .AddItem ("pièce") .AddItem ("kg") .AddItem ("litre") End With End Sub
-
-
Maintenant que j'ai reglé mon problème de doublons un autre probleme s,amène à moi :
j'ai deux listes déroulantes au sein d'une meme boite de dialogue le soucis est que lorsque l'une s'affiche, l'autre n'affiche plus les entrees dans la seconde liste deroulante ... que faire ?
'Paramètres de la liste déroulante unités
Private Sub Ingrédient_Activate()
With Me.cboUnité
.Clear
.AddItem ("pièce")
.AddItem ("kg")
.AddItem ("litre")
End With
End Sub
'Paramètres de la liste déroulante catégorie
Private Sub userform_Activate()
With Me.cboCatégorie
.Clear
.AddItem ("Epicerie sèche")
.AddItem ("Crèmerie")
.AddItem ("Fromages")
.AddItem ("Viandes")
.AddItem ("Poisson")
.AddItem ("Légumes secs et graines")
.AddItem ("Farines")
.AddItem ("Fruits secs et conserves sucrées")
.AddItem ("Condiments sucrés et salés")
.AddItem ("Préparations conserves")
.AddItem ("Fruits")
.AddItem ("Légumes")
End With
End Sub
merci d'avance !-
Qu'est ce que représentent userform et Ingrédient? deux Userforms différents?
Private Sub Ingrédient_Activate()
Private Sub userform_Activate()- Tu n'as qu'un seul userform, donc un seul événement Activate.
Soit :Private Sub Ingrédient_Activate() 'Paramètres de la liste déroulante unités With Me.cboUnité .Clear .AddItem ("pièce") .AddItem ("kg") .AddItem ("litre") End With 'Paramètres de la liste déroulante catégorie With Me.cboCatégorie .Clear .AddItem ("Epicerie sèche") .AddItem ("Crèmerie") .AddItem ("Fromages") .AddItem ("Viandes") .AddItem ("Poisson") .AddItem ("Légumes secs et graines") .AddItem ("Farines") .AddItem ("Fruits secs et conserves sucrées") .AddItem ("Condiments sucrés et salés") .AddItem ("Préparations conserves") .AddItem ("Fruits") .AddItem ("Légumes") End With End Sub
-
-
-
Bonjour,
Je ne me suis pas demandé pourquoi tu avais placé ce code dans le Activate de ton Userform.
Place le dans l'événement initialize, comme ceci :Private Sub UserForm_Initialize() 'Paramètres de la liste déroulante unités With Me.cboUnité .Clear .AddItem ("pièce") .AddItem ("kg") .AddItem ("litre") End With 'Paramètres de la liste déroulante catégorie With Me.cboCatégorie .Clear .AddItem ("Epicerie sèche") .AddItem ("Crèmerie") .AddItem ("Fromages") .AddItem ("Viandes") .AddItem ("Poisson") .AddItem ("Légumes secs et graines") .AddItem ("Farines") .AddItem ("Fruits secs et conserves sucrées") .AddItem ("Condiments sucrés et salés") .AddItem ("Préparations conserves") .AddItem ("Fruits") .AddItem ("Légumes") End With End Sub
🎼 Cordialement,
Franck 🎶