Slet alle makroer i en projektmappe/dokument ved hjælp af VBA i Microsoft Excel

Anonim

Hvis du arbejder med utallige makroer, og du vil have en makro til at slette alle de eksisterende koder fra den nuværende excel -projektmappe, vil følgende artikel helt sikkert hjælpe.

Når du vil slette alle makroer fra en projektmappe eller et dokument, kan du bruge makroen herunder.
Proceduren kan bruges i både Excel og Word uden nogen redigering.

Sub RemoveAllMacros (objDocument As Object) 'sletter alle VBProject-komponenter fra objDocument' fjerner koden fra indbyggede komponenter, der ikke kan slettes 'brug sådan: RemoveAllMacros ActiveWorkbook' i Excel 'eller som denne: RemoveAllMacros ActiveWorkbookDocument' i Word ' kræver en reference til 'Microsoft Visual Basic for Applications Extensibility library Dim i As Long, l As Long If objDocument Is Nothing Then Exit Sub i = 0 On Error Resume Next i = objDocument.VBProject.VBComponents.Count On Error GoTo 0 If i <1 Så er 'ingen VBComponents eller beskyttet VBProject MsgBox "The VBProject in" & objDocument.Name & _ "beskyttet eller har ingen komponenter!", _ VbInformation, "Fjern alle makroer" Afslut underenden Hvis med objDocument.VBProject For i = .VBComponents.Count til 1 trin -1 ved fejl Genoptag næste .VBComponents.Remove .VBComponents (i) 'slet komponenten On Error GoTo 0 Next i End with With objDocument.VBProject For i = .VBComponents.Count To 1 Step -1 l = 1 Ved fejl -genoptagelse Næste l = .VBComponents (i) .CodeModule.CountOfLines .VBComponents (i) .CodeModule.DeleteLines 1, l 'clear lines On Error GoTo 0 Next i End With End Sub