Bonjour,
Je recherche désespérément une solution pour supprimer le code présent dans une feuille dans le même classeur.
Voici les étapes réalisées :
1. copie de la feuille "Produits & TARIFS"
2. copie renommée en "Plan de tir"
Le hic, c'est que la feuille "Produits & TARIFS" contient un petit bout de code.
Or je ne souhaite pas que celui-ci soit présent dans le feuille "Plan de tir" qui est une copie de "Produits & TARIFS".
Voici le code que j'utilise avec en gras ce qui pose problème :
Sub Plan_de_Tir()
'Création du Plan de tir
Application.ScreenUpdating = False
'Création de la nouvelle feuille avec pour nom "Plan de Tir"
Sheets("Produits & TARIFS").Select
Sheets("Produits & TARIFS").Copy Before:=Sheets(2)
Sheets("Produits & TARIFS (2)").Select
Sheets("Produits & TARIFS (2)").Name = "Plan de tir"
'Suppression des colonnes inutiles
Range("D:E").Delete
Range("G:G").Delete
Range("J:J").Delete
Range("J:J").Delete
Range("J:J").Delete
'Filtrer les données
Range("J4").Select
ActiveSheet.Range("$A$4:$N$1152").AutoFilter Field:=10, Criteria1:="<>" ' ATTENTION = si ajout de ligne : modifier !!!
'Masquer la colonne des filtres
Columns("J:N").Select
Selection.EntireColumn.Hidden = True
'Sélection du tableau et de la zone d'impression
Range("A1").Select
Dim derlg As Integer
derlg = Range("A65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "$A$1:$I$" & derlg
'Suppression du code VB dans "Plan de tir" après sa création
With Workbooks("Base données & Bon commande Artifice Pyragirc - NF").VBProject.VBComponents("Plan de tir").CodeModule
.DeleteLines 1, .CountOfLines
End With
'Apperçu avant impression
Sheets("Plan de tir").Select
Application.CommandBars.ExecuteMso ("PrintPreviewAndPrint")
'Affiche le UserForm indiquant que le "Plan de tir" est terminé
PLAN.Show
End Sub