XL 2016 Suppression code dans sheet après copie

  • Initiateur de la discussion Initiateur de la discussion senpan
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

senpan

XLDnaute Junior
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
 
Bonjour senpan
A tester:

Remplacer:

Sheets("Produits & TARIFS").Select
Sheets("Produits & TARIFS").Copy Before:=Sheets(2)
Sheets("Produits & TARIFS (2)").Select
Sheets("Produits & TARIFS (2)").Name = "Plan de tir"
Sheets.Add.Name = "Plan de tir"

Par

Sheets.Add.Name = "Plan de tir"
ActiveSheet.Move Before:=Sheets(2)
Sheets("Produits & TARIFS").Cells.Copy Destination:=Sheets("Plan de tir").Range("A1")
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
576
Retour