Excel : copier la même ligne de plsrs feuille

Résolu/Fermé
betiz22 - 18 mai 2011 à 10:33
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 20 mai 2011 à 13:36
Bonjour à tous,

voila j'ai un gros soucis.
Je ne suis pas un pro d'excel et je bloque sur un élément.
Je vous explique mon problème.

J'ai un fichier excel qui comporte 84 feuilles.
Je souhaitais mettre sur une 85ème feuille un récapitulatif de toutes les données qui sont inscrits entre A2:H2.
Ces données sont du texte et des nombres.
A savoir que chaque feuille porte des noms totalement différents.

j'ai essayé un copier coller (j'ai tout sélectionné avec la touche maj), mais ils disent que les tailles différent donc que je ne peux pas.
Par ailleurs je suppose que si je copie-colle, ça ne se mettra pas à jour.

J'ai vu certaines réponses sur le forum mais je ne comprends rien du tout aux formules.

J'ai essayé d'aller dans le visual basic editor, mais je comprends pas.

Quelqu'un aurait-il une formule à me proposer ?

Merci bcp à vous et bonne journée





A voir également:

6 réponses

sirefalas Messages postés 219 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 12 février 2014 8
18 mai 2011 à 10:36
Je ne suis pas sur d'avoir compris ce que tu veux faire.
Tu veux copier une ligne de chacune de tes 84 pages pour les mettre les unes en dessous des autres dans la 85 page?

Si c'est le cas, tu es obligé de faire une macro et la... on risque de prendre un peu de temps
0
Je pense que tu as raison, en parlant de macro... c'est là mon pb.
Donc oui, je veux copier une ligne (A2:H2) de mes 84 pages pour les mettre les unes sous les autres dans une 85ème page
0
m@rina Messages postés 20104 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 29 avril 2024 11 274
18 mai 2011 à 10:40
Bonjour,

Tu dis :
"Je souhaitais mettre sur une 85ème feuille un récapitulatif de toutes les données qui sont inscrits entre A2:H2."
Mais de quelle(s) feuille(s) ?
Est ce que le but est de mettre récupérer les données des 84 feuilles sur la 85e ?

m@rina
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
18 mai 2011 à 11:45
bonjour,



Sub compiler()
Dim sht As Byte, col As Byte
Dim compil(1 To 84, 1 To 8)

For sht = 1 To 84
     For col = 1 To 8
          compil(sht, col) = Sheets(sht).Cells(2, col)
     Next col
Next sht

Application.ScreenUpdating = False
With Sheets(85).Range("A2:H85")
     .Value = compil
     .Borders.Weight = xlThin
End With
End Sub


si tu ne sais pas comment installer cette macro, tu dis...
0
Raymond PENTIER Messages postés 58399 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 29 avril 2024 17 094
18 mai 2011 à 13:26
Bonjour betiz22.

"j'ai essayé un copier coller (j'ai tout sélectionné avec la touche maj), mais ils disent que les tailles différent donc que je ne peux pas"
... c'est parce que tu n'as pas procédé comme il se doit :

En supposant que tes feuilles 1 et 2 ont une ligne de titres et 49 enregistrements,
* sélectionner les lignes 1 à 50 de Feuil1 et faire ctrl+C (copier),
** cliquer dans la cellule A1 de Feuil85 et faire ctrl+V (coller) ;
* sélectionner les lignes 2 à 50 de Feuil2 et faire ctrl+C (copier),
** cliquer dans la cellule A51 de Feuil85 et faire ctrl+V (coller).

Ton erreur est de copier une plage de cellules et pas des lignes complètes.

Cordialement.
0
Merci bcp mais le copier coller individuel j'arrive. Le soucis c'est que ca signifie que je dois le faire 85 fois. et j'ai 4 classeurs comme ça. Donc près de 340 fois. Non merci ^^
Je souhaite que ce soit automatisé.
Que la ligne A2:H2 de toutes mes feuilles se copient collent les unes sous les autres dans un classeur à part.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raymond PENTIER Messages postés 58399 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 29 avril 2024 17 094
19 mai 2011 à 05:20
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
20 mai 2011 à 13:36
Bonjour, everybody on ze forum

Problème résolu par MP

la solution retenue ci jointe pour respecter l'aspect communautairehttps://www.cjoint.com/?0EunIdfgh3L
et la macro
Sub compiler()
Dim nbre As Byte, cptr As Byte, cptr_c As Byte, col As Byte
Dim compil

nbre = ThisWorkbook.Sheets.Count
ReDim compil(1 To nbre - 2, 1 To 9)
cptr_c = 1
For cptr = 1 To nbre
     With Sheets(cptr)
          If .Name <> "synthese" And .Name <> "Suivi mensuel" Then
               For col = 1 To 8
                    compil(cptr_c, col) = .Cells(2, col)
               Next col
               cptr_c = cptr_c + 1
          End If
     End With
Next cptr

Application.ScreenUpdating = False
With Sheets("synthese")
     .Range("A2:H129").Clear
     With .Range("A2").Resize(nbre - 2, 8)
          .Value = compil
          .Borders.Weight = xlThin
     End With
.Activate
End With

End Sub


Bon WE
0