Pti pb excel

niny@ Messages postés 107 Statut Membre -  
niny@ Messages postés 107 Statut Membre -
Bonjour,

j'ai un tout petit pb sur la récupération de donnée dans un tableau.
j'explique ma situation :

je génére des boutons sur un userform à partir d'un fichier excel (tableau).
ces boutons sont alignés comme dans le tableau excel (duquel leur génération est faite).

pour els boutons situés sur une même ligne du userform, je dois les mettres dans un tableau X, pour ceux de la deuxième ligne dans un tab Y.
mon problème est que je ne vois aps comment associer la position des boutons en fonction de leur ligne pour l'envoyer au bon tableau.

est ce que quelqu'un pourrait m'éclairer à ce sujet ?

merci pour votre aide

6 réponses

amigo
 
Bonjour,

Si les boutons sont générés dans l'ordre, il y a des chanches que la propriété .index soit dans le meme ordre de création des boutons.
L'index c'est ce qui sert à passer d'un controle à l'autre sur une meme userform en appuyant sur la touche Tab.
Donc si tu sais combien de boutons il y a sur chaque ligne, le n° d'index te renseignera ou ils se trouvent.

Salut.
0
niny@ Messages postés 107 Statut Membre
 
sachant que mo nombre de boutons est variable c'est également possible ?
0
amigo
 
En fait, c'est de la proriété .Tabindex et non .Index que je voulais parler.

Cette propriété est incrémentée automatiquement à chaque création de controle.
Au moment de la génération des boutons il faut mémoriser dans une varialble ou un tableau le .tabindex de chaque bouton et pour chaque ligne.
0
niny@ Messages postés 107 Statut Membre
 
ok,

moi j'ai associé à mes boutons des labels qui portent le nom "label ligne, colonne", est ce que tu crois que ca pourrais etre utilisable à la place du tabindex? y'aurait déjà le numero de ligne.

je te pose beaucoup de question mais j'aime bien voir toutes les possibilités pour mieux voir comment coder la chose ! lol
0
amigo
 
Oui, avec un traitement approprié de la chaine on peut extraire le numéro de la ligne

Donnes moi un exemple de nommage pour que je me rende compte.
0
niny@ Messages postés 107 Statut Membre
 
le traitement c'est avec le mid ?

mon intitulé du label généré en même temps que les boutons :

Set label_dyna = AutoBe.Controls.Add("Forms.label.1", "label" & lig & col, True)

soit label11 si le label se trouve en Ligne1, colonne 1
0
amigo
 
Oui, c'est ça

ligne=mid(Forms.label.1.caption,6,1) donnera 1 si le caption est label11

mais les label c'est pas un bouton, comment tu fais pout lier un boton et un label?.
0
niny@ Messages postés 107 Statut Membre
 
c'est ce que je suis en train de me demander.

en fait mon label est plus ou moins lié à mon bouton.

en faisant un module de classe pour la création des boutons, quand je créé mes boutons dans un boucle je fais aussi mais label au même endroit mais en premier puis le bouton. comme ca il reste et posséde la même valeur que mon bouton. je fais un peu une construction 3D pour pas que lorsque je clique sur le bouton j'ai des pb de cllic sur celui ci (s'il y a un label dessus).

par contre c'est vri que niveau liaison proprement dite y'en a pas.

par contre mes boutons je els nommes avec le même principe que les labels donc je pourrais le faire :

ligne=mid(Forms.Bouton.1.caption,6,1)

sachant que je els nomment de la même facon : Bouton lig col soit Bouton11...

j'arrive pas à voir à quoi corresponde les chiffres dans le mid
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
amigo
 
OK

Juste un detail , si ligne est un entier il faudra mettre ligne=val(mid(Forms.Bouton.1.caption,6,1)) parce que la fonction mid() retourne une chaine de caractères.

Salut.
0
amigo
 
Encore un détail

pour Bouton11 c'est
ligne=val(mid(Forms.Bouton.1.caption,7,1))
7ème caractère , longueur 1
0
niny@ Messages postés 107 Statut Membre
 
je te remerci beaucoup pour ton aide et tes explications !!

je vais me débrouiller avec ca, ca me semble trés bien !!!

merci !

@+
0