REM 2011 znil.net Sub DeleteAllWordVBAMacros() Rem Ruf die Sub-Routinen nacheinander auf - mit der letzten löschen wir uns auch selbst Call Delete_WordModules Call Delete_WordUserforms Call Delete_WordThisDocumentProcedures End Sub Sub Delete_WordModules() Rem Löscht alle im aktiven Dokument hinterlegten Module: For n = ActiveDocument.VBProject.vbComponents.Count To 1 Step -1 If ActiveDocument.VBProject.vbComponents(n).Type = 1 Then ActiveDocument.VBProject.vbComponents(n).Collection.Remove ActiveDocument.VBProject.vbComponents(n) End If Next End Sub Sub Delete_WordUserforms() Rem Löscht alle im aktiven Dokument hinterlegten Forms: For n = ActiveDocument.VBProject.vbComponents.Count To 1 Step -1 If ActiveDocument.VBProject.vbComponents(n).Type = 3 Then ActiveDocument.VBProject.vbComponents(n).Collection.Remove ActiveDocument.VBProject.vbComponents(n) End If Next End Sub Sub Delete_WordThisDocumentProcedures() Rem Löscht alle Makros aus dem Bereich "ThisDocument" For n = ActiveDocument.VBProject.vbComponents.Count To 1 Step -1 For i = 1 To ActiveDocument.VBProject.vbComponents(n).CodeModule.CountOfLines If ActiveDocument.VBProject.vbComponents(n).Type <> 1 And ActiveDocument.VBProject.vbComponents(n).Type <> 3 Then _ ActiveDocument.VBProject.vbComponents(n).CodeModule.DeleteLines 1 Next Next End Sub