• Initiateur de la discussion Initiateur de la discussion Franck
  • 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 !

F

Franck

Guest
Bonsoir a tous

je cherche le moyen de faire une boucle sur tous les combobox de ma forme pour les effacer sans les nommer un par un

Merci de votre aide
Franck
 
Bonsoir Franck
Un petit exemple avec des bouton et une frame,
cela répond peut être à tes interogations.
bruno [file name=combobox_20060525191937.zip size=8641]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/combobox_20060525191937.zip[/file]
 

Pièces jointes

Bonsoir le forum
Bonsoir Franck, bonsoir CB60

Essaies ce code :
Code:
Private Sub commandbutton1_Click()
     Dim i As Integer
     For Each Ctrl In Me.Controls
          If TypeOf Ctrl Is MSForms.ComboBox Then
               i = i + 1
               Ctrl.Value = ''
          End If
     Next Ctrl
End Sub

Bonne soirée à toutes & à tous 😉
 
Bonsoir Bruno

Joli fichier mais il ne repond pas a ma question
mon probleme n'est pas d'entrer des données dans un combobox mais d'effacer les valeurs affichées
Merci quand meme d'avoir essayé

Franck
 
Bonsoir Eric

Ca marche mais aurais tu une idée pour que les ComboBox effacés ne concerne que ceux qui se trouvent dans mon Frame1 car pour le coup il m'en efface un peu trop

Merci d'avance
Franck
 
Salut

y a pas besoin
le controls n'est utile que si tu désires boucler sur plusieurs frame sinon, que tu écrives
Me.Frame1.Controls
ou
Me.Controls('Frame1').Controls
c'est kif
la seule différence, c'est que la deuxième écriture peut également s'écrire
Me.Controls('Frame' & Compteur ).Controls
pour une variable compteur à 1
tandis que
Me.Frame&Compteur.Controls ne fonctionnera evidemment pas

Cordialement, A+
 
Salut

N'oubliez pas qu'une des meilleures façons d'accéder à certains contrôles de façon sélective, c'est d'utiliser leur propriété Tag, trop souvent ignorée. Le Tag permet de 'marquer' un contrôle qu'il devient ensuite facile de reconnaître dans la liste des controles du userform

For Each Ctrl in Me.Controls
If Ctrl.Tag = 'ComboF1' then
End If
Next Ctrl

Cette façon de faire n'est pas du bricolage, bien utilisée elle se révèle très pratique.
 
- 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

Réponses
2
Affichages
145
Réponses
40
Affichages
2 K
Réponses
118
Affichages
3 K
Réponses
37
Affichages
1 K
  • Question Question
Autres Code VBA
Réponses
11
Affichages
470
Retour