Supprimer un module VBA avec du VBA 2003


#1

Bonjour,

Je cherche à créer une macro VBA pour supprimer un module VBA avec une version EXCEL 2003.

Avez-vous une idée ?

Merci


#2

Pour supprimer le module “Module1” tu peux utiliser ce code

Sub DeleteModule() 
    Dim VBProj As VBIDE.VBProject 
    Dim VBComp As VBIDE.VBComponent 
    Set VBProj = ActiveWorkbook.VBProject 
    Set VBComp = VBProj.VBComponents("Module1") 
    VBProj.VBComponents.Remove VBComp 
End Sub

#3

Je te remercie pour ta réponse très rapide.

Je viens de faire le test mais il y a quelque chose qui ne fonctionne pas.

J’ai l’erreur suivante : “Erreur de compilation type défini par l’utilisateur non défini” pour l’instruction suivante :
Dim VBProj As VBIDE.VBProject

C’est peut être la version d’Excel 2003 qui bloque.

Si tu as une autre idée, je suis preneur.

Merci,


#4

Essaye sans déclarer les variables alors?

Sub DeleteModule() 
    VBProj = ActiveWorkbook.VBProject
    VBComp = VBProj.VBComponents("Module1") 
    VBProj.VBComponents.Remove VBComp 
End Sub

#5

J’ai fait un essai sans les variables mais j’ai me message d’erreur suivant :
“Erreur d’exécution 1004 - L’accès par programme au projet visual basic n’est pas fiable”.

C’est la seconde ligne qui est en erreur :
VBProj = ActiveWorkbook.VBProject

Je vois pas ce qui cause problème.

Je suis preneur d’une autre idée.

Merci