Il giorno lunedì 2 luglio 2018 16:20:23 UTC+2, draleo ha scritto:
> Se solo riuscissi anche a cancellare in un colpo solo anche tutte le macro ( che > sono solo macro d'evento Private Sub CommandButtonX_Click()) poste sui moduli
> dei singoli fogli, sarebbe il massimo. Altrimenti pazienza… le cancellerò a mano
> draleo
Facendo molta attenzione all'uso che se ne fa (soprattutto in quali cartelle di lavoro) prova qualcosa del genere che elimina tutti i commandbutton e elimina, inserendo solo la riga "Option Explicit" come prima dichiarazione, tutto il codice VBA presente nei moduli di classe di tutti i fogli presenti nella cartella di lavoro.
Eventualmente prima fai una copia dei file di interesse ;)
Sub EliminaCommandButtonECodiceFogli()
Dim Wb As Workbook
Dim Ws As Worksheet
Dim OleObj As OLEObject
Dim oCodeModule As Object 'CodeModule
Set Wb = ActiveWorkbook
For Each Ws In Wb.Worksheets
For Each OleObj In Ws.OLEObjects
If TypeName(OleObj.Object) = "CommandButton" Then
OleObj.Delete
End If
Next OleObj
Set oCodeModule = Wb.VBProject.VBComponents(Ws.CodeName).CodeModule
With oCodeModule
.DeleteLines 1, .CountOfLines
.InsertLines 1, "Option Explicit"
End With
Next Ws
End Sub