Excel/macro : boucle complexe !

Résolu/Fermé
Magicien Blanc Messages postés 78 Date d'inscription lundi 25 juillet 2005 Statut Membre Dernière intervention 22 août 2010 - 21 août 2010 à 21:17
Magicien Blanc Messages postés 78 Date d'inscription lundi 25 juillet 2005 Statut Membre Dernière intervention 22 août 2010 - 22 août 2010 à 11:06
Bonjour,

Je suis en train de faire une macro sous Excel 2007.

Je suis à la recherche d'une solution pour pouvoir faire une boucle un peu tordue, où le compteur est utilisé pour passer d'un contôle à l'autre :
        UserForm1.lbl_enf__1__.Visible = True
        UserForm1.lbl_enf__2__.Visible = True
        UserForm1.lbl_enf__3__.Visible = True
        ...


ou encore

        UserForm1.txt_enf__1___prenom.Value = Cells(i, col_enf__1___prenom)
        UserForm1.txt_enf__2___prenom.Value = Cells(i, col_enf__2___prenom)
        UserForm1.txt_enf__3___prenom.Value = Cells(i, col_enf__3___prenom)


Auriez-vous avez une idée ?

A voir également:

1 réponse

cousinhub29 Messages postés 969 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 28 novembre 2024 345
22 août 2010 à 07:12
Bonjour,

Peut-être ainsi :

Dim I As Byte
For I = 1 To 3
    With UserForm1
        .Controls("lbl_enf__" & I & "__").Visible = True
        ' et si la colonne des prénoms est la colonne "C"
        ' ainsi que les prénoms commencent en ligne 2
        .Controls("txt_enf__" & I & "___prenom").Value = Cells(I + 1, 3)
    End With
Next I


Peut-être....
1
Magicien Blanc Messages postés 78 Date d'inscription lundi 25 juillet 2005 Statut Membre Dernière intervention 22 août 2010 10
Modifié par Magicien Blanc le 22/08/2010 à 12:04
PARFAIT !! merci beaucoup cousinhub29

Enfin, dans le Cells, mettre quelque chose comme
.Controls("txt_enf" & i & "_prenom").Value = Cells(i, "col_enf" & i & "_prenom")

ne fonctionne pas, même si col_enf1_prenom est bien déclaré comme un entier. Mais, je me suis arrangé pour ne plus avoir besoin de composer le nom de la variable avec le compteur.
0