Pb nom bouton
Résolu
niny
-
niny -
niny -
Bonjour,
envi : VBA sous Excel
je créer des boutons dynamiques à travers un bouton. la création de ces boutons de fait au travers d'une boucle.
ces boutons font appels aux mêmes fonctions
mon pb est :
du fait que je mets mes boutons dans une boucle de "création" comment faire pour que leur nom corresponde à un choix fait dans un treeview par ex ?
j'arrive bien à récupérer le nom du choix mais il s'attache à tous les boutons et non pas seulement à celui cliqué. comment dois je mis prendre ?
une aide serait la bienvenue
merci
envi : VBA sous Excel
je créer des boutons dynamiques à travers un bouton. la création de ces boutons de fait au travers d'une boucle.
ces boutons font appels aux mêmes fonctions
mon pb est :
du fait que je mets mes boutons dans une boucle de "création" comment faire pour que leur nom corresponde à un choix fait dans un treeview par ex ?
j'arrive bien à récupérer le nom du choix mais il s'attache à tous les boutons et non pas seulement à celui cliqué. comment dois je mis prendre ?
une aide serait la bienvenue
merci
A voir également:
- Pb nom bouton
- Bouton reinitialisation pc - Guide
- Diagnostic bouton photo - Accueil - Outils
- Bouton shift pc - Forum Jeux vidéo
- Bouton home clavier ✓ - Forum PC portable
- Bouton on/off comment savoir ✓ - Forum Matériel & Système
6 réponses
Bonjour,
Je crois que c'est la propriéte .Name qui donne le nom du bouton.
La propriété .Caption donne le texte inscit dans le bouton.
A+.
Je crois que c'est la propriéte .Name qui donne le nom du bouton.
La propriété .Caption donne le texte inscit dans le bouton.
A+.
boutonAModifier.caption=la_chaine_de_caractère_choisie.
Peut être veut tu savoir comment récupérer du treeview le choix de l'utilisateur??
Peut être veut tu savoir comment récupérer du treeview le choix de l'utilisateur??
Donne nous ta boucle de création de boutons, histoire d'y voir plus clair.;)
je sais aps si ca va etre tres clair :
Dim k As Integer
Dim deport As Integer
Dim inter As Integer
deport = 12
inter = 0
k = 3
While k <> 5
k = k + 1
Set Bouton = AutoBe.Controls.Add("Forms.CommandButton.1", "Bouton & k", True)
With Bouton
.Caption = AutoBe.nom_bouton
.Left = (inter * (k - 1)) + deport
.Top = 12
End With
Wend
Auto.Add Bouton, k
là du coup mes boutons ont tous le même caption.
je pensais passer par un id caché appelé : bouton_cliqué qui récupère le numero du bouton cliqué
et le comparer avec la liste des id bouton de la collection faite dans mes module de classe mais ca marche pas = du moins j'y arrive pas !
un peu plus clair mon histoire ?
Dim k As Integer
Dim deport As Integer
Dim inter As Integer
deport = 12
inter = 0
k = 3
While k <> 5
k = k + 1
Set Bouton = AutoBe.Controls.Add("Forms.CommandButton.1", "Bouton & k", True)
With Bouton
.Caption = AutoBe.nom_bouton
.Left = (inter * (k - 1)) + deport
.Top = 12
End With
Wend
Auto.Add Bouton, k
là du coup mes boutons ont tous le même caption.
je pensais passer par un id caché appelé : bouton_cliqué qui récupère le numero du bouton cliqué
et le comparer avec la liste des id bouton de la collection faite dans mes module de classe mais ca marche pas = du moins j'y arrive pas !
un peu plus clair mon histoire ?
bonjour,
Quelque chose ne va pas dans ta boucle
.Left = (inter * (k - 1)) + deport
Tu as fixé inter=0 ce qui fait (inter * (k - 1)) = 0 et donc tes boutons sont tous superposés aux coordonnées
.Letf=12
.Top=12
.Caption = AutoBe.nom_bouton
si tu veux que le Caption change à chaque bouton, if faut que AutoBe.nom_bouton change aussi chaque fois que tu crée un bouton. Je ne vois pas d'ou tu tire AutoBe.nom_bouton.
A+
Quelque chose ne va pas dans ta boucle
.Left = (inter * (k - 1)) + deport
Tu as fixé inter=0 ce qui fait (inter * (k - 1)) = 0 et donc tes boutons sont tous superposés aux coordonnées
.Letf=12
.Top=12
.Caption = AutoBe.nom_bouton
si tu veux que le Caption change à chaque bouton, if faut que AutoBe.nom_bouton change aussi chaque fois que tu crée un bouton. Je ne vois pas d'ou tu tire AutoBe.nom_bouton.
A+
c'est vrai qu'en copier /coller j'ai aps fait attention au inter = 0 mais c'etait un essais je te rassure lol
justement je ne sais pas comment faire pour que AutoBe.nom_bouton change
en fait mon AutoBe.nom_bouton correspond à un champs qui récupère le nom d'un choix d'un treeview et qui correspond au nom que doit porter le bouton sur lequel j'ai cliqué pour faire ce choix
justement je ne sais pas comment faire pour que AutoBe.nom_bouton change
en fait mon AutoBe.nom_bouton correspond à un champs qui récupère le nom d'un choix d'un treeview et qui correspond au nom que doit porter le bouton sur lequel j'ai cliqué pour faire ce choix
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
OK,
Alors tu ne peux pas créer tes boutons dans une boucle.
Tu selectionnes d'abord l'element de la treewiew qui donne le nom du bouton et tu crée le bouton ensuite.
Il faudra répéter cette opération autant de fois que de boutons voulus.
Tu écrits une procédure qui fait un seul bouton et tu lui passe en paramètre sa postion ou son indice si tu la calcules,
son Caption, etc...
Par contre si tu peut faire une selection multiple, alors tu peut faire une boucle : pour chaque element selectionné créer un bouton.
A+.
Alors tu ne peux pas créer tes boutons dans une boucle.
Tu selectionnes d'abord l'element de la treewiew qui donne le nom du bouton et tu crée le bouton ensuite.
Il faudra répéter cette opération autant de fois que de boutons voulus.
Tu écrits une procédure qui fait un seul bouton et tu lui passe en paramètre sa postion ou son indice si tu la calcules,
son Caption, etc...
Par contre si tu peut faire une selection multiple, alors tu peut faire une boucle : pour chaque element selectionné créer un bouton.
A+.
bon j'ai trouvé !!!
en fait fallait que dans mon module de classe je mette une caractéristique en plus de mon bouton
c'est à dire
With mBouton
.Caption = AutoBe.nom_bouton.Caption
End With
du coup quand je clique sur n'importe quel bouton créé dynamiquement ca me renvois bien à mon treeview sur lequel je fais mon choix et avec ces quelques lignes je renvois le nom du choix équivalent au nom_bouton sur le bouton souhaité !!!
peut etre que ca servira à d'autres personnes que moi !
merci à tous !!
en fait fallait que dans mon module de classe je mette une caractéristique en plus de mon bouton
c'est à dire
With mBouton
.Caption = AutoBe.nom_bouton.Caption
End With
du coup quand je clique sur n'importe quel bouton créé dynamiquement ca me renvois bien à mon treeview sur lequel je fais mon choix et avec ces quelques lignes je renvois le nom du choix équivalent au nom_bouton sur le bouton souhaité !!!
peut etre que ca servira à d'autres personnes que moi !
merci à tous !!
oui c'est ca c'est dans le caption que je récupére le nom du choix fait par une personne qcq.
mais je sais pas comment faire pour que le nom de ce choix se mette sur le caption mais de facon dynamique. en statique j'ai réussi mais la je sais aps du tout
une idée ?