[VBA Excel]. Pb de mise à jour de UserForm (c

Résolu/Fermé
ExcelMans Messages postés 2 Date d'inscription mercredi 16 août 2006 Statut Membre Dernière intervention 16 août 2006 - 16 août 2006 à 10:43
ExcelMans Messages postés 2 Date d'inscription mercredi 16 août 2006 Statut Membre Dernière intervention 16 août 2006 - 16 août 2006 à 11:35
Bonjour

J’ai un petit Pb dans la mise à jour d’une feuille UserForm :

Je voudrais que l’intitulé CheckBox13 puisse évoluer (sur la même ligne de code) en CheckBox 23, CheckBox 33…etc


Ecran_Accueil.CheckBox13.Caption = TabValeurs(CompteurLigne3, 1)
(CompteurLigne3 s’incrémente de 1 par une boucle ; TabValeurs est un tableau dynamique)


J’ai essayé le code ci-dessous, mais "CheckBox" n’est pas reconnu et plante la macro :

CheckBox = ("CheckBox" ) & (CompteurLigne3) & ("3" ) >>> La valeur de CheckBox est « CheckBox13 »

Ecran_Accueil.CheckBox.Caption = TabValeurs(CompteurLigne3, 1)

Je suis preneur de toutes méthodes simples et efficaces pour résoudre ce petit pb.

A+

ExcelMans
A voir également:

2 réponses

Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 1 528
16 août 2006 à 10:58
Salut ExcelMans,

Tous les contrôles (CheckBox, ComboBox, ListBox, etc.) d'un UserForm font partie de la collection Controls, et peuvent être désignés par leurs noms.

Si tu as la valeur 13 dans l'indice I, CheckBox13 peut être désigné aussi par :
Controls("CheckBox" & I).

Ça devrait t'aider pour ton PB...
2
ExcelMans Messages postés 2 Date d'inscription mercredi 16 août 2006 Statut Membre Dernière intervention 16 août 2006
16 août 2006 à 11:35
Je viens de tester cette solution, et elle marche bien aussi, car par ailleurs on m'a indiqué la solution ci-dessous qui fonctionne également :

Dim checkBox As String

CheckBox = "CheckBox" & CompteurLigne3 & "3"

Ecran_Accueil.Controls(chexkBox).Object.Caption = TabValeurs(CompteurLigne3, 1)

De cette façon à chaque passage de boucle incrémentant "CompteurLigne3" je Documente une nouvelle CheckBox : CheckBox13, puis CheckBox23, puis CheckBox33, ...etc.

Merci de ton aide Armojax

A+
0