• Initiateur de la discussion Initiateur de la discussion Temjeh
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

Temjeh

Guest
Bonjour le forum
Bonne journée à tous

J'ai juste un petit prob avec une répétition dans combo

Avec Usform.avtivate je remplie mon combo

With Combobox1
.additem 'Test'
.additem 'Test2'
end with

Le prob est qu'a chaque fois que je sélectionne Test il m'en ajoute un dans la liste donc si je le sélectionne 10 fois et dans mon combo j'ai 10 Test et un Test2

Suis-je normal docteur ?

Merci

Temjeh
 
Bonjour Temjeh, le Forum

J'ai fait un essai, je ne vois rien d'anormal si j'ai ceci comme instruction :

Private Sub UserForm_Activate()
With ComboBox1
.AddItem 'Test'
.AddItem 'Test2'
End With
End Sub

Maintenant, personnellement je conseillerai plus facilement d'incrémenter des données dans une ComboBox (ou ListBox) depuis l'évènement 'Initialize' qu''Activate'.

En effet je pense que c'est ce qui te joue des tours, même si tu n'as pas décrit l'intégralité de ton code pour ce UserForm (ou de tes UserForms) et Modal ou Non-Modal...

Car 'Activate' veut bien dire ce que ça veut dire... Cet évènement se produira systématiquement à chaque 'Activate' du UserForm, contrairement à 'Initialize' qui comme son l'indique aussi ne se produira qu'une fois... donc à l'initialisation du UserForm... quii semble bien plus appropriée, sauf ordonnance spéciale du Mèdecin... (lol)

Sinon dans la méthode 'bourrin' on peut aussi vider la ComboBox avec un Clear sans chercher à comprendre, comme suit :

Private Sub UserForm_Activate()
With ComboBox1
.Clear
.AddItem 'Test'
.AddItem 'Test2'
End With
End Sub


Mais souvent il vaut mieux analyser et utiliser les bons arguments applicables aux bons évènements du processus...

Bon Aprèm
@+Thierry
 
Merci beaucoup

J'avais essayé comme tu dit de contourner mais je faisait au début

ComboBox1 = ''

avec .Clear c'est parfait

Pour la suite du code je n'y suis qu'au début de ma compo mais j'ai un bouton qui valide ensuite ...ex:

Range('A1') = ComboBox1

Merci beaucoup

Temjeh
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
517
Réponses
38
Affichages
1 K
Réponses
2
Affichages
186
Retour