Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

  • Initiateur de la discussion Initiateur de la discussion dapiloux
  • 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 !

dapiloux

XLDnaute Nouveau
Bonjour a tous et a toutes

Je n'arrive pas a copier une feuille de mon classeur et la copier dans un nouveau classe, dans un répertoire spécifique, tout en lui donnant le nom d'une cellule. Mon classeur se nomme feuille saisie_v3 et ma feuille que je souhaite copier se nomme CoupeVIM.
Voila ce j'arrive a faire.

Sheets("CoupeVIM").Select
Sheets("CoupeVIM").Copy
ChDir "F:\"
ActiveWorkbook.SaveAs Filename:="F:\Classeur1.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False

Pour bien faire si mon classeur porte le nom de la cellule G2 serais le top.
Je joint un modèle pour plus de compréhension.
Merci d'avance.
 
Dernière modification par un modérateur:
Re : Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

Bonjour,

Quelque chose comme
Code:
Sub validecoupe()
Dim WB As Workbook
Dim Nom$

Nom$ = Sheets("CoupeVIM").[g2]
If Nom$ = "" Then Nom$ = "zzzz"
Set WB = Workbooks.Add(xlWBATWorksheet)

ThisWorkbook.Sheets("CoupeVIM").Copy Before:=WB.Sheets(1)
Application.DisplayAlerts = False
WB.Sheets(2).Delete
Application.DisplayAlerts = True

WB.SaveAs Filename:="F:\" & Nom$ & ".xlsx", FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False
WB.Close SaveChanges:=False
End Sub
 
Re : Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

Bonjour PMO2

Oui c'est bien ça merci.
Petit question:
Si je change l'adresse de destination qui est pour l'instant celui-çi:
WB.SaveAs Filename:="F:\" & Nom$ & ".xlsx"

Je doit par exemple noté la nouvelle adresse comme ça?
WB.SaveAs Filename:="C:\MES DOCUMENTS\" & Nom$ & ".xlsx"
 
Re : Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

Bonjour
Donc après plusieurs test ça ne marche pas si je change "F:\" pour "C:\MES DOCUMENTS\"
Comment faire? quel est le code, je ne comprend pas?
Merci pour vos réponse
 
Re : Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

Bonjour,

Vous n'indiquez probablement pas le bon chemin, vérifiez le.
Chez moi, j'ai "C:\Documents and Settings\Patrick\Mes documents\"
 
Re : Enregistrer une feuille dans un nouveau classeur avec un nom spécifique sous VBA

Bonsoir à tous


Une autre manière de l'écrire, un chouia plus court
Code:
Sub Wks2Wbk()
Dim NWBK As Workbook
Sheets("Feuil1").Copy: Set NWBK = ActiveWorkbook
NWBK.SaveAs "C:\temp\" & NWBK.Sheets(1).[g2] & ".xlsx", FileFormat:=51: NWBK.Close False
End Sub

NB: penser à adapter le nom de la feuille et du chemin avant de tester
Et il vaut mieux que la cellule G2 ne soit pas vide 😉
 
- 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
9
Affichages
385
Réponses
3
Affichages
523
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…