Changer le nom d'un élèment userform en variable

Résolu/Fermé
Jivelien - 8 mai 2015 à 17:19
 Jivelien - 11 mai 2015 à 23:47
Bonjour,
J'avais une petite question concernant la simplification d'un de mes codes...
Est il possible de faire évoluer la zone de lecture d'une variable au sein d'une userform de la même manière qu'on pourrait faire évoluer la valeur d'une variable/ligne, etc.
Je m'explique, plus concrétement car je ne pense pas avoir le bon vocabulaire pour être clair...
'LafailleEntr est le nom de l'userform ; première répétition
If LafailleEntr.CheckBox1.Value = True Then
...
LafailleEntr.Label2.Caption = LafailleEntr.TextBox1.Value
...
End If
'Seconde répétition
If LafailleEntr.CheckBox2.Value = True Then
...
LafailleEntr.Label2.Caption = LafailleEntr.TextBox2.Value
...
End If

Comme vous pouvez le voir, cette portion de code n'est qu'une répétition ou seul le numéro de "Textbox" et "CheckBox" change pour passer de 1 à 2. Ce code est répété ...24fois. Ce qui rend les modification très contraignante... L'idée aurait été d'incrémenter un compteur en variable (par exemple) et de simplifier le code en boucle... :
Counter =1
Do until Counter = 24
If LafailleEntr.CheckBox(counter).Value = True Then
...
LafailleEntr.Label2.Caption = LafailleEntr.TextBox(counter).Value
...
End If
Counter = Counter +1
Loop

Un peu dans ce style là.... est-ce réalisable?

Merci d'avance pour votre aide !
A voir également:

2 réponses

La solution est simple :

Userform1.textbox1 peut être remplacer par la syntaxe Userform1.controls("Textbox1") et donc, par Userform1.controls("Textbox" & Numero).

Au cas où quelqu'un se posera la question un autre jour
2
michel_m Messages postés 16602 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 313
9 mai 2015 à 08:21
Bonjour

tu as tout ce qui faut dans ce tuto célèbre
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LI-B
1
Merci! En fait c'est d'une simplicité déconcertante..
Je suis pas un grand fana des cours, j'aime bien découvrir les options au fur et à mesure en fonction des besoins, mais parfois, il faut savoir s'y référer ^^
0