Ștergeți toate macrocomenzile dintr-un registru de lucru / document utilizând VBA în Microsoft Excel

Anonim

Dacă lucrați cu nenumărate macrocomenzi și doriți ca o macrocomandă să șteargă toate codurile existente din registrul de lucru curent Excel, următorul articol vă va ajuta cu siguranță.

Când doriți să ștergeți toate macrocomenzile dintr-un registru de lucru sau dintr-un document, puteți utiliza macro-ul de mai jos.
Procedura poate fi utilizată atât în ​​Excel, cât și în Word, fără nicio editare.

Sub RemoveAllMacros (objDocument Ca obiect) „șterge toate componentele VBProject din objDocument” elimină codul din componentele încorporate care nu pot fi șterse „utilizați astfel: RemoveAllMacros ActiveWorkbook„ în Excel ”sau astfel: RemoveAllMacros ActiveWorkbookDocument„ în Word ” necesită o referință la „Microsoft Visual Basic pentru aplicații Extensibility library Dim i As Long, l At 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 Atunci 'nu există componente VBC sau VBProject MsgBox protejat "VBProject în" & objDocument.Name & _ "este protejat sau nu are componente!", _ VbInformation, "Remove All Macros" Exit Sub End If With objDocument.VBProject For i = .VBComponents.Count To 1 Step -1 On Error Resume Next .VBComponents.Remove .VBComponents (i) 'delete the component On Error GoTo 0 Next i End With With objDocument.VBProject For i = .VBComponents.Count To 1 Step -1 l = 1 La reluarea erorii Următorul l = .VBComponents (i) .CodeModule.CountOfLines .VBComponents (i) .CodeModule.DeleteLines 1, l 'clear lines On Error GoTo 0 Next i End With End Sub