J'aimerais pouvoir créer plusieurs boutons sur un userform dynamiquement sans en connaitre le nombre auparavant et y pouvoir associer un évenement different pour chacun d'eux.
Est ce possible ? si oui, pouvez vous m'aider ?
Merci d'avance.
J'aimerais pouvoir créer plusieurs boutons sur un userform dynamiquement sans en connaitre le nombre auparavant et y pouvoir associer un évenement different pour chacun d'eux.
Est ce possible ? si oui, pouvez vous m'aider ?
Merci d'avance.
tu peu t'inspirer de :
Module de Classe, simulation VBA d'un groupe de contrôle
![]()
bonjour
Tu trouveras aussi une autre méthode dans ce lien:
(chapitre V-A)
http://silkyroad.developpez.com/VBA/...icEditor/#LV-A
bonne journée
michel
Merci pour vos reponses.
Je vais essayer de m'inspirer du deuxieme, ca correspond plus a ce que je cherche. J'ai oublié de préciser que je travaillais sur Excel 97. Je suis en train de realiser un fichier qui permettra de gerer des stocks de produit finis.
Je vous tient au courant de l'évolution et du fonctionnement de mon projet.
Bonne journée.
Selon l'utilisation, tu n'es pas obligé de passer par un module de class, tu peux aussi tester ça en mettant un bouton CommandButton1 sur un userform tout nu... (testé sur 97)
'Nécessite d'activer la réference "Microsoft Visual Basic for Applications extensibility x.x"
Comme pour la méthode proposée par SilkyRoad, tu peux ajouter le code des boutons par soft.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 Public WithEvents BoutonWithEvents As ToggleButton Public WithEvents Bouton2WithEvents As ToggleButton Private Sub Bouton2WithEvents_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) MsgBox "Bouton 2" Bouton2WithEvents = False End Sub Private Sub BoutonWithEvents_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) MsgBox "Bouton 1" BoutonWithEvents = False End Sub Sub CommandButton1_Click() Set BoutonWithEvents = Me.Controls.Add("Forms.ToggleButton.1", "", True) With BoutonWithEvents .Left = 30 .Top = 50 .Width = 100 .Height = 40 .Caption = "C'est le bouton 1" End With Set Bouton2WithEvents = Me.Controls.Add("Forms.ToggleButton.1", "", True) With Bouton2WithEvents .Left = 30 .Top = BoutonWithEvents.Top + 50 .Width = 100 .Height = 40 .Caption = "C'est le bouton 1" End With CommandButton1.Visible = False End Sub Private Sub UserForm_Initialize() With CommandButton1 .Width = 100 .Height = 40 .Top = 108 .Left = 130 .Caption = "LeBoutonQuiCrée" .Font.Bold = True End With End Sub
Merci encore a tous ceux qui m'ont repondu. J'ai resolu mon probleme avec le lien proposé par SilkyRoad. J'ai plus qu'a finaliser deux ou trois truc et j'ai fini mon fichier-apli. C'est mon chef qui va etre content et ..... a moi l'augmentation ! lol
Bonne continuation a tous !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager