XL 2016 supprimer 1 ou tous les modules vba

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,

Élucubrations du dimanche matin et encore besoin de vos lumières :)

Je reprends tous mes classeurs qui contiennent bcp de codes tous venus du forum
et adaptés selon mes petites connaissances.
Un grand à vous toutes et tous car sans vous, je n'aurais pas pu travailler dans de bonne conditions.

J'ai besoin pour tout reprendre et nettoyer plus vite d'un code supprimant d'un coup tous les modules du classeur ouvert.
Ne sachant pas faire cela, j'ai beaucoup cherché cette nuit sur le net.
Tout ce que j'ai pu essayer et/ou tenter d'adapter n'a pas pas réussi.

Les codes qui me semblent les plus proches sont ceux du site : https://silkyroad.developpez.com/VBA/VisualBasicEditor/#LIV-D
Mais les 2 codes que j'ai récupéré 'coincent" chez moi et je n'arrive pas à modifier pour que ça fonctionne :
VB:
Sub supprimerUnModule()
    With ThisWorkbook.VBProject.VBComponents
        .Remove .Item("Module2")
    End With
End Sub

Sub SupprimeTout()
    'supprime la totalité des procédures
    Dim VbComp As VBComponent

    For Each VbComp In ThisWorkbook.VBProject.VBComponents
        Select Case VbComp.Type
            Case 1 To 3
                ThisWorkbook.VBProject.VBComponents.Remove VbComp
            Case Else
                With VbComp.CodeModule
                .DeleteLines 1, .CountOfLines
                End With
        End Select
    Next VbComp
End Sub

Si vous aviez la solution, ça me ferait gagner beaucoup de temps.
Je joins un fichier test.
Avec mes remerciements,
Je vous souhaite à toutes et à tous un beau dimanche,
Amicalement,
lionel,
 

Pièces jointes

  • vba_supprime_modules.xlsm
    18.7 KB · Affichages: 2

Staple1600

XLDnaute Barbatruc
Bonjour,

arthour973
La macro s'en charge de la sélection du dossier, il suffit de le sélectionner (le dossier) plus de cliquer sur OK
Ensuite la macro traite les *.xlsm et *.xlsb présents dans ce dossier.

PS: Pour tester :
crées un dossier de test, avec seulement 3, 4 ou 5 classeurs
Comme dit dans mon précédent message, c'est ce que j'ai fait lors de mes tests et cela prends moins de 5 minutes ;)
 

Staple1600

XLDnaute Barbatruc
Re

C'est pourtant simple et limpide non?
01Arthour.jpg


EDITION: Bonjour Victor21
J'ai suggéré cela dès le message#4 ;)
 

Staple1600

XLDnaute Barbatruc
Bonjour, les bavards, et joyeuse fête du travail :)

Bah! encore une quarantaine d'échanges, et le problème sera résolu...(ou pas)
A moins d'enregistrer sous XLSX, mais pourquoi faire simple ?
;)
On est bien d'accord ;)
Re
Pour supprimer rapidement tout le vba, d'un classeur, c'est très simple ;)
Il suffit de l'enregistrer en *.xlsx
 

Staple1600

XLDnaute Barbatruc
Re

Fais simple, reproduis l'arborescence de mon test en créant exactement le même dossier dans ton répertoire Mes Documents.
Je ne peux pas faire plus et en plus et il est l'heure pour moi de déjeuner ;)

NB: Il faut simplement sélectionner le dossier
(et ne pas chercher à sélectionner les classeurs!)
 

Discussions similaires

Réponses
2
Affichages
113

Statistiques des forums

Discussions
312 185
Messages
2 086 014
Membres
103 093
dernier inscrit
Molinari