すべての種類のモジュールを削除することはできません。ワークシート、グラフ、およびThisWorkbookのコードモジュールを削除することはできません。これらのモジュールでは、モジュール自体ではなくコンテンツを削除する必要があります。

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

例:

DeleteModuleContent ActiveWorkbook, "Sheet1"