Erreur 1004 lors de la suppression de code VBA

Bonjour,

Je travaille régulièrement sur un classeur excel dans lequel je répertorie une liste d'incidents. J'ai à disposition une liste de clients, et je dois aller récupérer tout un tas d'informations dans plusieurs autres fichiers à partir du numéro de client.

Tout fonctionne parfaitement pour l'instant, mais pour ne pas conserver la macro dans les archives, j'ai ajouté un bouton « Générer rapport » qui permet de créer un nouveau classeur contenant uniquement deux calques avec les informations voulues.

Le problème est le suivant : le bouton est ajouté dans la feuille principale (celle dans laquelle s'ajoutent les données), ainsi, le code vba est principalement compris dans cette feuille (mais il y a également quelques lignes dans « This Workbook », ainsi que dans le module 1 que j'ai ajouté). J'ai donc suivi les indications trouvées, et tout fonctionne parfaitement quand je lance la macro.

Mais, pour une raison que j'ignore, lorsque mon collègue la lance depuis son poste (nous avons tout deux excel 2010), la macro plante et renvoie l'erreur 1004 sur les deux fonctions Supprimer_Code_Feuille et Supprimer_Code_ThisWorkbook que voici :

Sub Supprimer_Code_Feuille(ByVal file As Workbook)

With file.VBProject.VBComponents(file.Sheets(1).CodeName).CodeModule
    .DeleteLines 1, .CountOfLines
    .CodePane.Window.Close
End With

End Sub

Sub Supprimer_Code_ThisWorkbook(ByVal file As Workbook)

With file.VBProject.VBComponents("ThisWorkbook").CodeModule
    .DeleteLines 1, .CountOfLines
    .CodePane.Window.Close
End With

End Sub

Je précise que j'ai bien ajouté la référence « Microsoft Visual Basic for Applications Extensibility 5.3 », mais je ne sais pas si l'ajout est interne au fichier, et par conséquent si mon collègue doit lui aussi l'ajouter après avoir téléchargé mon fichier.

C'est la première fois que je tombe sur une telle erreur, j'espère que vous pourrez m'aider à en trouver la cause.

Je vous remercie d'avance.

Bonjour

A vérifier

Onglet Développeur --> Sécurité des macros --> Il faut cocher "Accès approuvé au modèle d'objet du projet VBA"

Qui sait ?

Effectivement, j'avais la case cochée sur ma session, mais pas lui, ça règle bien le problème.

C'est un peu problématique que chaque nouvel utilisateur ai besoin de modifier ce réglage manuellement, mais bon, je suppose que je ne trouverais pas mieux comme solution.

Merci beaucoup, problème résolu.

Rechercher des sujets similaires à "erreur 1004 lors suppression code vba"