CharlesR
Messages postés4Date d'inscriptionjeudi 18 octobre 2007StatutMembreDernière intervention23 octobre 2007
-
21 oct. 2007 à 06:52
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
24 oct. 2007 à 02:30
Bonjour,
Je suis actuellement en train de développer un fichier Excel en vue d'organiser des statistiques sportives. J'aurais besoin d'un peu d'aide à propos du problème suivant:
Compostion de mon classeur Excel:
- 1 feuille "model"
- 120 feuilles (copies du "model")
- 1 feuille "data"
Les 120 feuilles sont par exemple 120 matchs indépendants.
Voici ce que je souhaiterais faire:
- Séléctionner la même plage de cellules (46lignes et 1colonne) sur chacune des 120sheets,
- Couper toutes ses plages,
- Les coller sur la "Data" sheet suivant l'ordre des 120sheets.
Auriez-vous une quelconque ébauche de macro, ou un autre outil qui puisse m'être utile?
Merci d'avance,
Cordialement,
CharlesR
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 21 oct. 2007 à 13:34
Comme outil, il y a l'enregistreur de macros inclus dans Excel.
Tu peux donc faire ta routine sur 2 ou 3 feuilles et tu verras ce qui se répète et qui pourrait être groupé dans une boucle.
Pour faciliter ton travail (macro), tu devrais nommer tes feuilles de match avec un Index, du genre
"Match1", "Match2", "Match3", ...
Tu pourras alors activer ces feuilles comme suit:
For compteur = 1 to 120
Sheets("Match" & compteur).Activate
...
Next
Et tu n'exliques pas où exactement tu colles ces données... une à côté de l'autre (?), une sous l'autre (?)
CharlesR
Messages postés4Date d'inscriptionjeudi 18 octobre 2007StatutMembreDernière intervention23 octobre 2007 22 oct. 2007 à 05:30
Merci beaucoup d'avoir répondu à ma requête MPi. Effectivement, mes feuilles suivent le modèle suivant: T#-R#, où T: Tournament, R: Round. Tous les tournois sont constitués de 4 Rounds chacun, autrement dit le premier tournoi donne les 4 feuilles suivantes: T1-R1 ; T1-R2 ; T1-R3 ; T1-R4 ; puis le deuxième tounroi T2-R1 ; T2-R2 ; ...
Pourrais-tu actualiser ton code "For compteur..." avec les dernières données que je viens de te fournir?
Je ne suis pas très calé en programmation (même si j'aimerais bcp l'être! il va falloir que je trouve le temps...), aurais-tu l'amabilité de m'indiquer le code de la boucle (cela doit être un code basique, si tu n'as pas le temps, pas grave je trouverais...)
En ce qui concerne le "collage" des cellules, je souhaiterais que les cellules coupées se succèdent en colonne. Autrement dit, cellules coupées de T1-R1, sur une colonne intitulée "T1-R1" de la "data" sheet; puis les cellules coupées de T1-R2 sur la colonne suivante de la "data" sheet intitulée "T1-R2"...
(les cellules coupées ne font parties que d'une seule colonne)
En attendant ta réponse,
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 22 oct. 2007 à 11:47
Comme il y a 2 variables, il te faudrait 2 boucles
Quelque chose comme:
For i = 1 to 30
For j = 1 to 4
Colonne = Colonne + 1
Sheets("T" & i & "-T" & j).Activate
range("A1:A46").Copy ' pour copier... ou Cut pour couper
Sheets("Data").Cells(1, Colonne ).PasteSpecial
Next
Next