■
VBAから一括してマクロを削除するコード
調べるとそのまま使えるコードがありました。
http://chaichan.web.infoseek.co.jp/vbtips/VBMemo2006081403.htm
※ セキュリティ設定と参照設定は必要。
Sub Macro() Dim objVBCOMPO As Object For Each objVBCOMPO In ActiveWorkbook.VBProject.VBComponents With objVBCOMPO.CodeModule If .CountOfLines <> 0 Then .DeleteLines 1, .CountOfLines End With If (objVBCOMPO.Type = vbext_ct_StdModule Or objVBCOMPO.Type = vbext_ct_MSForm) Then ActiveWorkbook.VBProject.VBComponents.Remove objVBCOMPO End If Next objVBCOMPO Set objVBCOMPO = Nothing End Sub
このコードを実行すると、標準モジュールだけじゃなくてシートモジュールとかのコードも削除して
自分自身も消えてしまうという。