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 !

WaxistSelecta

XLDnaute Junior
Bonjour, je me permets de solliciter le forum pour une question relativement simple je pense mais ne disposant pas des connaissances nécessaires, je me tourne vers l'expertise...

L'objet de ma demande est le suivant : je cherche à optimiser un bout de code pour le rendre "dynamique" .

Basiquement, ce code réalise un bête copier coller d'un fichier vers un autre. Le problème est qu'il nomme les plages de cellules précises à copier/coller : ces plages de cellules étant en évolution, le code n'est pas dynamique et ne prends pas en compte l'extension de ces plages (colonnes) dans le temps, sans mise à jour manuelle du code...

[/HTML]If Sh.Name <> "Lancement" And Sh.Name <> "Conso à date par région" And Sh.Name <> "Conso histo par région" Then
Set wb = Workbooks.Open("C:\Templates\Template Report Région.xls")
Sh.Range("A2:G36").Copy Destination:=wb.Sheets("Votre Région a date").Range("A65536").End(xlUp)(2)
Sh.Range("H2:H36").Copy Destination:=wb.Sheets("Votre Région a date").Range("J65536").End(xlUp)(2)
Sh.Range("I2:I36").Copy Destination:=wb.Sheets("Votre Région a date").Range("M65536").End(xlUp)(2)
Sh.Range("J2:J36").Copy Destination:=wb.Sheets("Votre Région a date").Range("P65536").End(xlUp)(2)
Sh.Range("K2:K36").Copy Destination:=wb.Sheets("Votre Région a date").Range("S65536").End(xlUp)(2)
Sh.Range("L2:L36").Copy Destination:=wb.Sheets("Votre Région a date").Range("V65536").End(xlUp)(2)
Sh.Range("M2:M36").Copy Destination:=wb.Sheets("Votre Région a date").Range("Y65536").End(xlUp)(2)
Sh.Range("N2:N36").Copy Destination:=wb.Sheets("Votre Région a date").Range("AB65536").End(xlUp)(2)
Sh.Range("O2:O36").Copy Destination:=wb.Sheets("Votre Région a date").Range("AE65536").End(xlUp)(2)
Sh.Range("O2:O36").Copy Destination:=wb.Sheets("Votre Région a date").Range("AH65536").End(xlUp)(2)
Je sais c'est bête mais je ne connais pas précisemment la manière de rendre cette opération "automatique"...

J'imagine qu'il faut utiliser un truc du genre xltoright ...

Merci pour votre aide précieuse!
 
Re : Optimisation code

Bonjour le forum,

en gros ce que je cherche à faire c'est pouvoir gérer une plage de données mouvante dans le temps:

Ajout de nouvelles colonnes au fur et à mesure des semaines...

Pour l'instant, je le gère à la main quand j'ai besoin mais j'aimerai pouvoir éviter de le faire, si quelqu'un a une petite idée...

Merci d'avance!

J.
 
- 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
5
Affichages
705
Réponses
8
Affichages
529
Réponses
7
Affichages
478
  • Question Question
Microsoft 365 CSV en EXCEL
Réponses
1
Affichages
124
Retour