Accéder à un contrôle par son nom stocké dans une variable

Résolu
bluheim Messages postés 2 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 22 février 2006 - 15 févr. 2006 à 17:55
bluheim Messages postés 2 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 22 février 2006 - 22 févr. 2006 à 11:08
Bonjour à tous !

Je désirerais accéder aux contrôles de mon formulaire par leur nom. Mais je veux que le nom des contrôles soit générés dynamiquement par mon code, afin d'automatiser le processus.

En d'autres termes, j'ai une liste de champs de texte dans un formulaire dont les noms sont Attribute1, Attribute2, Attribute3, etc...et je souhaiterais que mon code accède aux valeurs de ses champs.

Je sais comment accéder à la valeur de ces champs avec leur nom :

Me![Attribute1].Value
Me![Attribute2].Value
Me![Attribute3].Value
...

Mais je voudrais automatiser ce processus dans une boucle :


While (Index < 15)

' On stocke le nom du champ de texte dont on veut récupérer la valeur

FieldName = "Attribute" & Index

' On accéde à cette valeur

SQLAttribute = Me![FieldName].Value

Index = Index + 1

Wend

Comme vous vous en doutez, cette portion de code ne fonctionne pas puisque VB crois que je veux accéder au champs dont le nom est FieldName...alors qu'en réalité, FieldName est une variable qui contient le nom du champ à accéder. Quelle est la syntaxe exacte pour accéder à un contrôle quand son nom est stockée dans une variable et non pas saisi en dut dans le code ?

Merci d'avance,

Eric.

2 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
15 févr. 2006 à 20:00
Salut, une tite piste :

1 form avec 1 textbox nommée "text1" et commandbutton (command1)

Sub Command1_Click()
dim FieldName as string
FieldName = "text1"
MsgBox Me(FieldName).Text
end sub

En tous cas, en vb6, ça fonctionne.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
3
bluheim Messages postés 2 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 22 février 2006
22 févr. 2006 à 11:08
Merci beaucoup, c'est exactement ça, ça marche à la perfection !!!

Et désolé pour cette réponse tardive, je n'ai pas le net chez moi en ce moment. Encore merci !
0
Rejoignez-nous