Bonjour à tous,

Afin de favoriser la réutilisation d'une macro, je voudrais pouvoir faire en sorte que dans l'userform de la macro, les CommandButton n'ont pas besoin d'être ajouté "à la main" sur le UserForm mais qu'ils soient ajoutés et positionnés dans la macro.

Voici un extrait de mon code UserForm (exemple pour l'ajout d'un seul bouton):

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
Private Sub UserForm_Initialize() 
 
    Dim ActWB As Workbook 
    Dim I As Integer 
    Dim Bouton1 As Control 
 
    With UserForm1 
        .StartUpPosition = 2 
        .Height = 100 
        .Width = 150 
    End With 
 
    Set Bouton1 = UserForm1.Controls.Add("Forms.CommandButton.1") 
    With Bouton1 
        .Name = "BoutonOK" 
        .Caption = "OK" 
        .Left = 25 
        .Top = 50 
        .Width = 50 
        .Height = 18 
    End With 
 
End Sub
Par ailleurs j'ai une combo qui permet de choisir un onglet d'une 2eme feuille, et donc lorsque l'on clique sur le bouton OK, il faudrait que cela valide l'onglet choisi...seulement lorsque je mettai le bouton "à la main" sur l'UserForm tout marchait comme il faut, et la en l'ajoutant dans le code de la macro comme ci-dessus, le click sur le bouton OK n'a plus aucun effet

Ou est-ce que je dois mettre le code suivant pour qu'il soit pris en compte ??

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Private Sub BoutonOK_Click() 
    Dim onglet As String 
    onglet = combo.text 
    ActiveWorkbook.Sheets(onglet).Activate 
    Unload Me 
End Sub

Merci pour vos réponses !