Copie de feuilles sur autre classeur que celui lançant la macro

Résolu/Fermé
HUGO BASS Messages postés 20 Date d'inscription dimanche 11 août 2013 Statut Membre Dernière intervention 18 septembre 2015 - 18 sept. 2015 à 11:27
HUGO BASS Messages postés 20 Date d'inscription dimanche 11 août 2013 Statut Membre Dernière intervention 18 septembre 2015 - 18 sept. 2015 à 23:03
Bonjour à toutes et tous,

Avec l'aide des internautes et des forums j'ai pu écrire la procédure ci après qui fonctionne bien.

Ce code fusionne plusieurs classeurs xlsb en un seul (les feuilles de chacun des fichiers sources sont copiées dans autant de feuilles dans le fichier compilé final, les feuilles sont nommées avec le non du fichier original sans son extension plus un numéro de compteur dans le cas ou il y'aurait plusieurs feuilles).

Je voudrais encore améliorer ce code en faisant en sorte que les feuilles soient copiées non pas sur le classeur (le nommé maitre dans le code) d'ou est lancée la macro mais sur un nouveau classeur vierge (j'ai essayé sans succès en utilisant plusieurs syntaxe d'insérer l'instruction Wookbooks.Add).

Je sollicite donc votre aide.

Merci
Cordialement
Hugues

ps : Même question également présente sur un autre FORUM sans résolution au moment ou j'écris ce post.




Sub Fusion()
Dim Maitre As Workbook
Dim Compteur As Integer
Dim Nf As String
Dim K As Integer

Application.ScreenUpdating = False
ChDir ActiveWorkbook.Path
Set Maitre = ActiveWorkbook

Nf = Dir("*.xlsb")
Do While Nf <> ""
If Nf <> Maitre.Name Then
With Workbooks.Open(Filename:=Nf)
For K = 1 To .Sheets.Count
.Sheets(K).Copy after:=Maitre.Sheets(Maitre.Sheets.Count)
ActiveSheet.Name = Replace(Nf, ".xlsb", "") & " " & K
Next K
.Close False
End With
End If
Nf = Dir
Loop
End Sub
A voir également:

3 réponses

PlacageGranby Messages postés 393 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 7 mars 2019 26
Modifié par PlacageGranby le 18/09/2015 à 15:51
Bonjour,

Petite recherche google : "vba créé un fichier excel"

Petit lien de 2007 comme premier résultat
https://forums.commentcamarche.net/forum/affich-4314289-vba-creation-d-un-nouveau-classeur-excel

Bonne lecture.

(Plutôt que l'approprier du code que je n'ai pas écrit, je donne le lien. On trouve toujours presque tout avec Google, il suffit de mettre les bons mots clés généralement avec VBA au début)
0