Il n’est pas possible de supprimer toutes sortes de modules, vous ne pouvez pas supprimer les codemodules pour les feuilles de calcul, les graphiques et ThisWorkbook. Dans ces modules, vous devez supprimer le contenu au lieu du module lui-même:

Sub DeleteModuleContent(ByVal wb As Workbook, _

ByVal DeleteModuleName As String)

' deletes the contents of DeleteModuleName in wb

' use this if you can't delete the module

On Error Resume Next

With wb.VBProject.VBComponents(DeleteModuleName).CodeModule

.DeleteLines 1, .CountOfLines

End With

On Error GoTo 0

End Sub

Exemple:

DeleteModuleContent ActiveWorkbook, "Sheet1"