Voilà le code
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 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim WS As Worksheet Dim BtnRtr As OLEObject Dim mCode As String MsgBox "Vous avez double cliqué sur la cellule " & Target.Address If Target.Address = "$A$1" Then Workbooks.Open "C:\Documents and Settings\user\Bureau\allobob-.xlsx" Workbooks("allobob-.xlsx").Sheets(1).Copy after:=Workbooks("Copie de Adupliquer.xlsm").Sheets(3) Workbooks("Copie de Adupliquer.xlsm").Sheets(4).Name = "Allobob" Windows("allobob-.xlsx").Close Set WS = ThisWorkbook.Worksheets("Allobob") With WS Set BtnRtr = .OLEObjects.Add("Forms.CommandButton.9") With BtnRtr .Name = "BtnRtr9" .Left = 500 .Top = 40 .Width = 50 .Height = 20 .Object.Caption = "Effacer" End With mCode = "Sub BtnRtr9_Click()" & vbCrLf mCode = mCode & "Cells(3,1).Clear" & vbCrLf mCode = mCode & "End Sub" With ThisWorkbook.VBProject.VBComponents(.CodeName).CodeModule .InsertLines .CountOfLines + 1, mCode End With End With End If Cancel = True End Sub
Sur la feuil1 par doubleclick de la cellule A1 j'ajoute un onglet qui correspond au fichier à récupérer, il se place en 4éme position.
Ensuite le code doit ajouter un commandbutton sur cette feuille nouvellement crée.
C'est là , sur la ligne Set BtnRtr = .OLEObjects.Add("Forms.CommandButton.9")
qu'il m'affiche une erreur 1004. Impossible d'insérer un objet
Je suis bloqué depuis ce matin, qq'un voit-il ou est le problème ?
j'ai bien mis la reference visual basic for applications
Partager