1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| Public Sub Exporter(ByVal Nomfeuille As String)
Dim Ceclasseur As Workbook
Dim Copie As Workbook
Set Ceclasseur = ActiveWorkbook
Ceclasseur.Sheets(Nomfeuille).Copy
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Copie.xls"
ActiveWorkbook.Worksheets(Nomfeuille).OLEObjects(1).Delete
Call supprimerUneMacroPrecise
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Sub supprimerUneMacroPrecise() 'Supprimer la macro nommée NomMacro dans le module NomModule
Dim Debut As Integer, Lignes As Integer
Dim NomMacro, NomModule
NomModule = InputBox("Saisir le nom du module de la macro à supprimer", "")
NomMacro = InputBox("Saisir le nom de la macro à supprimer : ", "")
With Workbooks("Copie.xls").VBProject.VBComponents(NomModule).CodeModule
Debut = .ProcStartLine(NomMacro, 0)
Lignes = .ProcCountLines(NomMacro, 0)
'.DeleteLines Debut, Lignes 'Valider pour supprimer la macro
End With
End Sub |