Probl sur macro téléchargée sur XLD - Wilki

antiphot

XLDnaute Occasionnel
Bonjour à tous et à toutes

J'ai téléchargé un fichier exemple sur wilki. Il s'agit d'une macro qui permet de créer un commandbutton sur une feuille et d'y associer une macro.

Bon je l'ai testé tel que et excel plante au niveau de l'insertion de la macro. J'ai un message d'erreur:

erreur 1004
l'accès par programme au projet Visual Basic n'est pas fiable.

Pouvez-vous me dire d'ou vient ce bug ? (j'ai excel 2003)

Merci par avance
ci-joint le fichier [file name=Creer_Classeur_Bouton_Et_Macro.zip size=22545]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Creer_Classeur_Bouton_Et_Macro.zip[/file]
 

Pièces jointes

  • Creer_Classeur_Bouton_Et_Macro.zip
    22 KB · Affichages: 13
  • Creer_Classeur_Bouton_Et_Macro.zip
    22 KB · Affichages: 12
  • Creer_Classeur_Bouton_Et_Macro.zip
    22 KB · Affichages: 11

Ti_

Nous a quitté
Repose en paix
Salut
Tu vas dans le menu Outils...Macro...Sécurité
tu vas dans l'onglet 'Editeurs approuvés' et tu coches l'option 'Faire confiance au projet Visual Basic.
Au passage, tu vérifies que dans l'onglet 'Niveau de sécurité', tu as bien coché le niveau moyen.
Ensuite tu peux tester toutes les macros que tu veux...
 

antiphot

XLDnaute Occasionnel
Bonjour et bon dimanche

Je reviens sur le fil car j'ai un probl d'adaptation de cette macro à un usage personnel.

Ci_joint la macro modifiée qui me met
'l'indice n'appartient pas à la sélection'

Sub créer_bouton()
Dim oOLE As OLEObject
Dim X As Byte
Dim Code As String
Dim NextLine As String

Sheets('Répertoire').Select

Set oOLE = ActiveSheet.OLEObjects.Add(ClassType:='Forms.CommandButton.1', _
Link:=False, DisplayAsIcon:=False, Left:=340, Top:=30, Width:=100, Height:=30)
'Left position bouton par rapport au bord gauche de la feuille
'Top position bouton par rapport au haut de la feuille
'Width largeur bouton
'Height hauteur bouton

X = ActiveSheet.OLEObjects.Count 'compter le nombre de boutons existants dans la feuille

'option nommer l'objet
oOLE.Name = 'CommandButton' & X
'texte sur le bouton
ActiveSheet.OLEObjects(X).Object.Caption = 'Le Forum XLD ' & X

Code = 'Sub CommandButton' & X & '_Click()' & vbCrLf
Code = Code & 'Msgbox ''Bonjour le forum XLD''' & vbCrLf
Code = Code & 'End Sub'

With thisWorkbooks.VBProject.VBComponents(ActiveSheet.Name).CodeModule
NextLine = .CountOfLines + 1
.InsertLines NextLine, Code
End With
End Sub

il est clair que j'ai fait une bêtise qui tourne surement autour de la sélection de ma feuille mais ??

Merci d'avance
 

Hervé

XLDnaute Barbatruc
Bonjour antiphot, ti, le forum

essaye comme ceci :

With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.CodeName).CodeModule


au lieu de :
With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule


salut
 

Discussions similaires

Réponses
2
Affichages
552

Statistiques des forums

Discussions
314 450
Messages
2 109 729
Membres
110 553
dernier inscrit
loic55