Définir tous les contrôles d'un userform en tant que variables dans un tableau (array)

Description

il est parfois fastidieux et surtout très long d'écrire
textbox1.value="xxx"
textbox2.value="yyy"
....................
textbox50.value="zzz"
surtout quand les données sont stockées dans un fichier texte
Au lieu de 50 lignes de code, cela peut se faire en 2 ou trois lignes

Source / Exemple :


Private Sub UserForm_Activate()
 Dim designation(1 To 8) As String
 Dim prix(1 To 8) As String
 Dim i As Integer
 
 alltbox = Array("TBox1", "TBox2", "TBox3", "TBox4", "TBox5", "TBox6", "TBox7", "TBox8")
 allmont = Array("mont1", "mont2", "mont3", "mont4", "mont5", "mont6", "mont7", "mont8")
 
 chemin = ActiveWorkbook.Path
 Open chemin + "\composants.txt" For Input As #1
 
 Do While Not EOF(1)
    i = i + 1
    Input #1, designation(i), prix(i)
 Loop
 Close #1
 
 For j = 0 To 7
    Controls(alltbox(j)).Value = designation(j)
    Controls(allmont(j)).Value = prix(j)
 Next j
End Sub

Conclusion :


code sans prétention (...) mais qui peut aider des élèves qui débutent la programmation

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.