Objet + Variable Interpretation

Fermé
kikoumatou Messages postés 1 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 13 août 2014 - 13 août 2014 à 10:56
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 14 août 2014 à 07:54
Bonjour,

Je suis confronté a un problème assez simple et pourtant je ne trouve pas la solution qui me convient:

J'ai plusieurs objets ComboBox que j'ai nommé respectivement ComboBox1, ComboBox2, ComboBox3 et ainsi de suite.
Pour généraliser j'ai donc un entier i dans une boucle:
"ComboBox" & i

Mon problème se pose lorsque je veux utiliser les propriétés de l'objet, par exemple afficher sa valeur:
MsgBox ("ComboBox" & i & ".Text")
Les guillemets fait que cela va être traité comme un string mais lorsque j'enlève les guillemets cela ne fonctionne pas, j'ai une erreur de compilation.

Si quelqu'un a une idée je suis preneur :)

Merci d avance

1 réponse

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
14 août 2014 à 07:54
Bonjour,

En effet, avec des guillemets c'est un String. Si tu veux que VBA interprète ton code comme un objet, plus précisément un contrôle, il faut que tu le précises. Essaie ceci :

MsgBox Me.Controls("ComboBox" & i).Text 

Me représente l'objet UserForm dans lequel sont insérées tes combobox. S'il s'agit d'une feuille (objet WorkSheet), il faudra faire ta boucle différemment.

0