supprimer macro

bertgrav

XLDnaute Occasionnel
bonjour,

j'ai réalisé une macro appelée 'TRAVAIL' qui consiste aprés traitement à envoyé le fichier réalisé dans un dossier bien défini avec la date du jour, du type pour aujourd'hui:
06 03 23 montravail.xls

par contre, comme ce nouveau fichier est issu de mon 1er fichier où est ma macro, je me retrouve avec ce nouveau fichier avec la fameuse macro 'TRAVAIL'
comme j'ai fait des recherches, apparamment il n'y a pas moyen 'd'enregistrer sous' sans enlever les macros du dossier d'origine.
par contre est il possible de creer une macro qui supprime une macro ?
Ainsi dans ce nouveau dossier, s'il y avait un macro qui détruirait la macro 'TRAVAIL' à l'ouverture le tour est joué...

merci

chantal
 

bertgrav

XLDnaute Occasionnel
Par contre, j'ai refait des recherches, et c'est vrai je n'avais pas pensé à recghercher du coté de SUPPRIMER MODULE.

Je suis tombée sur le site de Frédéric SIGONNEAU
Ce site n'existe plus

un site trés interressant
j'ai eu ce Code:
'supprimer tout le code d'un classeur
Sub SupprToutCodeVBA()
'L Longre, mpfe

Dim VBC As Object
With ActiveWorkbook.VBProject
For Each VBC In .VBComponents
If VBC.Type = 100 Then
With VBC.CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Else: .VBComponents.Remove VBC
End If
Next VBC
End With
MsgBox 'Modules et macros du classeur actif supprimés.', _
vbInformation
End Sub

alors là il n'y a pas photo: ça supprime TOUT

chantal
 

coco_lapin

XLDnaute Impliqué
Il faut lire la réponse de MichelXLD sur le lien que je t'ai fais passé (ou vas voir dans les wiki de michelXLD)

Ci dessous j'ai fais un copier coller de la réponse de MichelXLD

Supprimer la macro nommée 'MaMacro' dans le 'module3'
**************************************
Sub supprimerUneMacroPrecise()
Dim Debut As Integer, Lignes As Integer

With ThisWorkbook.VBProject.VBComponents('Module3').CodeModule
Debut = .ProcStartLine('MaMacro', 0)
Lignes = .ProcCountLines('MaMacro', 0)
.DeleteLines Debut, Lignes
End With
End Sub


Supprimer un module
******************
Sub supprimerUnModule()
With ThisWorkbook.VBProject.VBComponents
.Remove .Item('Module2')
End With
End Sub


Si pb joins un exemple de ton application et je placerais le code.
 

Statistiques des forums

Discussions
312 492
Messages
2 088 938
Membres
103 988
dernier inscrit
Feonix