Bonjour,
J'ai créé une macro VBA dans un module Excel d'un classeur source qui permet de générer un nouveau fichier Excel un classeur cible.
Dans le classeur cible, je souhaiterais avoir un bouton qui permet de mettre à jour certaines feuilles. J'arrive à créer le code pour créer le bouton dans on classeur cible, par contre je n'arrive pas à affecter une macro.
Voici le code de ma macro dans le classeur source:
Le bouton se crée bien dans mon classeur cible, par contre lorsque je clique dessus, le code "MAJ" ne se lance pas.
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 Dim Code As String Dim Objet As OLEObject Dim X As String Dim NextLine As Long ThisWorkbook.Worksheets(1).Activate Set Objet = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _ , DisplayAsIcon:=False, Left:=111, Top:=81.75, Width:=368.25, Height _ :=116.25) Objet.Object.Caption = "Mise à jour" Objet.Name = "MAJ" Code = "Private Sub MAJ_Click()" & vbCrLf Code = Code & "Sheets(""ThisWorkbook.Worksheets(1).name"").select" & vbCrLf Code = Code & "End Sub" With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule NextLine = .CountOfLines + 1 .Insertlines NextLine, Code End With
Je vous remercie par avance si vous avez des idées pour faire fonctionner le code.
Cakola
Partager