XL 2021 Duplication d'onglets dans un nouveau fichier et enregistrement selon une cellule donnée

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

catdog

XLDnaute Junior
Bonjour,

J'ai une petite macro qui me permet de dupliquer 3 des onglets d'un fichier dans un nouveau fichier. Cette macro fonctionne à merveille.

Maintenant, j'aimerais aller un poil plus loin : j'aimerais qu'à cela, la macro attribue un nom au nouveau fichier... Nom défini par une formule dans une cellule de l'onglet actif.

Code:
Sub copy_sheets()
'
' Copie les onglets vers un nouveau classeur
'
    Sheets(Array("Cout Personnel", "Matrice FC", "Contributions en nature")).Select
    Sheets("Cout Personnel").Activate
    Sheets(Array("Cout Personnel", "Matrice FC", "Contributions en nature")).Copy

Le nom (avec chemin, nom et extension en xlsx) sera indiqué dans la cellule AA4

Merci d'avance pour votre aide...
Je suis convaincu que c'est un p'tit truc tout bête...

Olivier.
 
Solution
Bonjour catdog,

Voici une possibilité, je passe par une variable pour le chemin et le nom, mais pas obligé 😉
VB:
Sub CopieEtEnregistre()
  Dim sPathFile As String
  sPathFile = ActiveWorkbook.Sheets("Cout Personnel").Range("AA4").Value
  ' Copie les onglets vers un nouveau classeur
  ActiveWorkbook.Sheets(Array("Cout Personnel", "Matrice FC", "Contributions en nature")).Copy
  If Right(sPathFile, 5) <> ".xlsx" Then sPathFile = sPathFile & ".xlsx"
  ' Sauvegarder le classeur devenu actif
  ActiveWorkbook.SaveAs sPathFile
End Sub
Edit : modification code

A+
Re-bonjour,

Pour préciser ma demande, j'aimerais faire comme la macro ci-dessous :
Code:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    [AA2], Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True

Cette macro me permet de créer un pdf avec le chemin et le nom qui se trouvent dans la cellule AA2.

Mais cette fois, je voudrais créer un nouveau fichier excel avec le chemin et le nom qui se trouvent en AA4.

Merci d'avance,
Olivier.
 
Bonjour catdog,

Voici une possibilité, je passe par une variable pour le chemin et le nom, mais pas obligé 😉
VB:
Sub CopieEtEnregistre()
  Dim sPathFile As String
  sPathFile = ActiveWorkbook.Sheets("Cout Personnel").Range("AA4").Value
  ' Copie les onglets vers un nouveau classeur
  ActiveWorkbook.Sheets(Array("Cout Personnel", "Matrice FC", "Contributions en nature")).Copy
  If Right(sPathFile, 5) <> ".xlsx" Then sPathFile = sPathFile & ".xlsx"
  ' Sauvegarder le classeur devenu actif
  ActiveWorkbook.SaveAs sPathFile
End Sub
Edit : modification code

A+
 
Dernière édition:
Rebonjour
Bonjour catdog,

Voici une possibilité, je passe par une variable pour le chemin et le nom, mais pas obligé 😉
VB:
Sub CopieEtEnregistre()
  Dim sPathFile As String
  ' Copie les onglets vers un nouveau classeur
  Sheets(Array("Cout Personnel", "Matrice FC", "Contributions en nature")).Copy
  sPathFile = Sheets("Cout Personnel").Range("AA4")
  If Right(sPathFile, 5) <> ".xlsx" Then sPathFile = sPathFile & ".xlsx"
  ' Sauvegarder le classeur devenu actif
  ActiveWorkbook.Save sPathFile
End Sub

A+
Malheureusement, j'ai le résultat suivant :
1712755470206.png

J'ai juste copier/coller ton code dans le nom de ma macro en sub...
Par contre, c'est une macro que j'ai habituellement dans mon classeur personnel et non dans le classeur d'origine des onglets. Cela pourrait-il avoir un impact ?

Merci d'avance,
Olivier.
 
Re,

Je viens de modifier le code précédent, à retester avec les modifications 😉

A+
On progresse...
J'ai maintenant le message suivant :
1712760114682.png

Si je mets "oui", bien évidemment, la macro va jusqu'au bout.
Par contre, je ne vois pas pourquoi il m'embarque une macro dans mon nouveau fichier.
Ne peut-on pas s'affranchir de cette question, et "forcer" l'enregistrement sans macro ?

Je ferai sans si besoin...

Merci encore...
 
- 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

Retour