Excel : regrouper feuilles dans un onglet [Fermé]

Signaler
Messages postés
3
Date d'inscription
mardi 21 août 2012
Statut
Membre
Dernière intervention
21 août 2012
-
Mike-31
Messages postés
17000
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
6 janvier 2020
-
Bonjour,

J'ai recherché dans ce forum et d'autres mais je ne trouve pas la réponse à cette question qui me semble plutôt basique.

Mon classeur se compose de

feuilles par salarié :

feuille 1 : Employé A
feuille 2 : Employé B
feuille 3 : Employé C

feuilles de temps :

feuille 4 : Janvier
feuille 5 : Février
feuille 6 : Mars

Quand on ouvre le classeur, celui-ci est volumineux, on a du mal a retrouver les mois et les salariés, j'aimerai donc crée une sorte de gros onglet pour au final avoir seulement 2 onglets : salarié et mois. Quand on cliquerai sur un onglet, on pourrai choisir quelles feuilles ouvrir, celles qui nous intéressent.

J'espère avoir été assez claire et que vous serez me répondre.

Agréable journée

Je vous remercie

Marie


5 réponses

Messages postés
50727
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
12 janvier 2020
11716
La question est basique ; la réponse est complexe et nécessite une macro !

C'est au départ qu'il aurait fallu réfléchir à tout ça, et procéder dans l'autre sens : Créer un fichier avec deux volets, et à la demande extraire de chaque feuille les éléments concernant un salarié donné ou un mois précis.
--
C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂
Messages postés
3
Date d'inscription
mardi 21 août 2012
Statut
Membre
Dernière intervention
21 août 2012

Merci de votre réponse.

Le fichier est en cours de création pour 2013... Je peux le refaire mais est-ce que par : "extraire de chaque feuille les éléments" cela équivaut à une consolidation de plusieurs pages de données ? ou quel est le nom "excel" pour que je puisse trouver des tutoriels ?

Je vous remercie.

Marie
Raymond PENTIER
Messages postés
50727
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
12 janvier 2020
11716
Messages postés
17000
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
6 janvier 2020
3751
Salut,

Colle ce code dans un module, associe le à un bouton

Sub consolide_onglets()
Sheets("Feuil1").[A1].CurrentRegion.Offset(1, 0).Clear
For s = 2 To Sheets.Count
Range(Sheets(s).[A2], Sheets(s).[A65000].End(xlUp).End(xlToRight)).Copy _
[A65000].End(xlUp).Offset(1, 0)
Next s
On Error Resume Next
[A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub

Source Boisgontier
http://boisgontierjacques.free.fr/pages_site/GestionOnglets.htm#Consolidation
Messages postés
3
Date d'inscription
mardi 21 août 2012
Statut
Membre
Dernière intervention
21 août 2012

@ Raymon Pentier : merci pour l'exemple, je vais essayer !

@Mike-31 : Merci pour la macro, mais lorsque je l'utilise, elle supprime toutes mes données sauf la première ligne. Merci pour le lien, je vais essayer de trouver avec.
Messages postés
17000
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
6 janvier 2020
3751
Re,

Il suffit simplement d'adapter le code à ces besoins, ce code copy de la première ligne et copie à la suite sur la feuille 1

Sub consolide_onglets()
For s = 2 To Sheets.Count
Range(Sheets(s).[A1], Sheets(s).[A65000].End(xlUp).End(xlToRight)).Copy _
[A65000].End(xlUp).Offset(1, 0)
Next s
On Error Resume Next
[A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub