Modification de code

Bonsoir le forum

Voici un code qui permet de créer et d'enregistrer autant de fichiers que d'onglets contenus dans un fichier et en copiant le premier

onglet dans chaque fichier créer. (exemple: "Feuil1-Feuil2", Feuil1-Feuil3", "Feuil1-Feuil4"...)

Le souci, c'est qu'à chaque création, il faut confirmer l'enregistrement du nouveau fichier dans un répertoire

comment faire pour qu'au lancement de la macro je puisse choisir un répertoir de destination et que tous les classeurs soient crées sans avoir à confirmer cette création

Sub essai()
    For Each feuille In Worksheets
        Sheets("Feuil1").Copy
        Set w = ActiveWorkbook
        Windows("Original.xlsm").Activate
        feuille.Copy After:=w.Sheets(1)
        w.Activate

        fichier = Application.GetSaveAsFilename(feuille.Name, filefilter:="Fichier(*.xls),*.xls")
        ActiveWorkbook.SaveAs Filename:=fichier
        ActiveWindow.Close
     Next feuille
    MsgBox "Travail terminé"
End Sub

D'avance je vous remercie pour votre aide et pour le temps que que vous m'acoordez

Bonjour

A tester

Sub Essai()
Dim Feuille As Worksheet
Dim Chemin As String

  With Application.FileDialog(msoFileDialogFolderPicker)
    If .Show = -1 Then    ' Clic sur Ok
    Chemin = .SelectedItems(1)
    Else
      ' Clic sur Annuler
      Exit Sub
    End If
  End With

  For Each Feuille In Worksheets
    If Feuille.Name <> "Feuil1" Then
      Sheets(Array("Feuil1", Feuille.Name)).Copy
      ActiveWorkbook.SaveAs Filename:=Chemin & "\" & Feuille.Name, FileFormat:=xlExcel8
      ActiveWorkbook.Close
    End If
  Next Feuille
  MsgBox "Travail terminé"
End Sub

Bonjour le forum

Bonjour Banzai64, encore une fois fois merci pour ton aide et ta disponibilité

Alors j'ai testé ton code et il à marché une fois mais en m'affichant à chaque fois un texte de perte minimale de données pour chaque nouveau dossier, c'est parce qu'il est généré à la base par un logiciel qui le créer en ".xls".

Après plus rien

Je mets en pièce jointe un fichier pour tester ce code, je précise que ce n'est pas la "Feuil1" qu'il fut copier dans chaque fichier, mais la la feuille "Fiche Appui" et que se sera toujours celle-ci

merci pour ton aide

Bonjour

A tester

Bonjour le forum

Bonjour Banzai64

Ok impec ca me va très bien

J'ai vu que tu avais commenté " 'xlExcel8 " , je présume que c'est ce qui définissait le format d'enregistrement " *.xls" version 97-2003

et si j'ai bien compris où puis-je trouver ,STP, ces équivalences d'enregistrement pour VBA ?

Merci

Bonjour

Je les ai trouvé soit avec l'enregistreur de macro, soit avec l'aide

Une recherche sur SaveAs et dans la page d'aide un clic sur XlFileFormat

Ok merci

Bon dimanche

sujet clos

Rechercher des sujets similaires à "modification code"