Copier une plage de cellule ( range) sur un autre fichier excel

Fermé
abdou-éco Messages postés 8 Date d'inscription mercredi 18 septembre 2013 Statut Membre Dernière intervention 20 septembre 2013 - 18 sept. 2013 à 16:19
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 20 sept. 2013 à 16:32
Bonjour je m'adresse à vous les spécialiste ou amateur du visual basic
j'ai un petit problème, j'ai 11 fichier excel chacun contient plusieur feuille mais j'utilise qu'une seul feuille par fichier
je veux avoir un nouveau fichier excel qui regroupe une plage de cellule de chaque fichier sur un seul tableau, mais j'arrive pas à copier la plage de chaque fichier pour la coller dans le fichier d'arrivée, j'ai essayé plusieurs code mais comme je suis débutant, j'arrive pas à le faire.
j'ai juste réussi à faire avec plusieurs feuille d'un seul fichier et à coller les plages de chaque feuilles sur un tableau que j'ai crée sur une autre feuille du méme fichier

si quelqu'un à déjà eu comme ce problème et il sait comment le résourdre merci de m'aider :)

Cordialement

11 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 19/09/2013 à 17:23
Re,
Pourquoi Pastespecial ?
Si tu ne recopies que des données, ci dessous un principe à adapter

Sub Main()
Application.ScreenUpdating = False
fichier = Array("AA", "BB", "CC", "DD")
zone = Array("A3:A78", "B3:B78", "C3:C78", "D3:D78")
For cptr = 0 To 3
copier fichier(cptr), zone(cptr)
Next
End Sub

Sub copier(classeur, plage)
ThisWorkbook.Sheets(1).Range(plage) = Workbooks(classeur & ".xls").Sheets("Manufacturing").Range("A1:A82").Value
End Sub


Il y a beaucoup mieux et rapide, mais comme tu ne veux pas répondre aux questions ni communiquer un classeur source , on va en rester là :o)
en espérant quand m^me que ça marche(travail à l'aveugle)...

Michel
5