Regrouper onglets en un seul

hester

XLDnaute Junior
Bonjour,

Je dispose de 4 fichiers Excel 6ème, 5ème, 4ème et 3ème.
Dans chaque fichier, il y a des onglets : les 8 classes de 6ème, les 5 de 5ème...

J'aimerai tout regrouper en un seul onglet, dans un autre document. Comment faire ?

Je ne sais pas par où commencer.

Merci de votre aide,

Hester
 

13GIBE59

XLDnaute Accro
Re : Regrouper onglets en un seul

Bonjour Hester. :)

Tout en manuel :
Crée un fichier, nomme le, par exemple "Tout".
Dans chacun de tes fichiers, clic droit sur chaque onglet, choisis
"Déplacer ou copier", en haut de la fenêtre, sélectionne ton classeur "Tout", coche de préférence "Créer une copie, et OK.

Bon courage.
 

hester

XLDnaute Junior
Re : Regrouper onglets en un seul

Voilà un exemple.

Je voudrais obtenir l'onglet résultat d'une autre manière qu'en faisant copier/coller manuellement car dans le vrai fichier, il y a 40 classes.

Staple1600, j'ai utilisé l'onglet recherche. Soit ça ne correspondait pas à ce que je voulais, soit j'ai pas compris comment faire avec mon fichier.

Désolé, je suis pas une pro d'Excel et encore moins des macros.
 

Pièces jointes

  • 3ème.xlsm
    15 KB · Affichages: 368

Staple1600

XLDnaute Barbatruc
Re : Regrouper onglets en un seul

Re



En adaptant le code de JB (issu du fil que je cite plus bas)
voici un macro basique qui fait ce que tu souhaites.
Pour tester, effaces le contenu de la feuille Résultats avant de lancer la macro

Code:
Sub consolide_onglets()
 Dim s As Long, a As Long
 With Sheets("Résultats")
  For s = 1 To Sheets.Count
     If Sheets(s).Name <> "Résultats" Then
       a = Sheets(s).Range("C3").CurrentRegion.Offset(1, 0).Rows.Count - 1
        Sheets(s).Range("C3").CurrentRegion.Offset(1, 0).Copy .[A65000].End(xlUp).Offset(1, 0)
      .[D65000].End(xlUp).Offset(1, 0).Resize(a) = Left(Sheets(s).Name, 1) & "°" & Right(Sheets(s).Name, 1)
     End If
  Next s
  End With
End Sub
 

pandamaske

XLDnaute Nouveau
Re : Regrouper onglets en un seul

Re



En adaptant le code de JB (issu du fil que je cite plus bas)
voici un macro basique qui fait ce que tu souhaites.
Pour tester, effaces le contenu de la feuille Résultats avant de lancer la macro

Code:
Sub consolide_onglets()
 Dim s As Long, a As Long
 With Sheets("Résultats")
  For s = 1 To Sheets.Count
     If Sheets(s).Name <> "Résultats" Then
       a = Sheets(s).Range("C3").CurrentRegion.Offset(1, 0).Rows.Count - 1
        Sheets(s).Range("C3").CurrentRegion.Offset(1, 0).Copy .[A65000].End(xlUp).Offset(1, 0)
      .[D65000].End(xlUp).Offset(1, 0).Resize(a) = Left(Sheets(s).Name, 1) & "°" & Right(Sheets(s).Name, 1)
     End If
  Next s
  End With
End Sub
Bonjour, je passe ici pour vous remercier et dire que vous m'avez sauvez !!!
 

Staple1600

XLDnaute Barbatruc
Bonsoir

=>pandamake
Je passe ici par hasard et j'apprends que je vous ai sauvé.
Grand bien vous fasse comme il dirait sur France Inter ;)
C'est surtout Excel et ...
on VBA (qui si j'en crois ce que je lis ici et là est voué à disparaitre)

Et comme je l'indiquais en septembre 2010, j'ai adapté à ma sauce un code de JB
(une pointure de la communauté Excel francophone)

Je profite de ce fil pour lui rendre hommage (•) et le remercie donc pour la somme de ressources "exceliennes" qu'il nous laisse.

(•) : voir ce fil:
https://www.excel-downloads.com/threads/boisgontier-jacques-quelles-dernieres-nouvelles.20064525/
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 117
Membres
103 121
dernier inscrit
SophieS