Nom onglet automatique dans le tableau

lelia10

XLDnaute Junior
Bonjour le forum,

Je cherche à savoir comment obtenir de manière automatique le nom des onglets(qui sont en fait des noms de personnes) dans un tableau récapitulatif?
Ci joint un fichier simplifié afin d'apprendre sur excel j'essayerai d'adapter à mon fichier.

Merci d'avance aux personnes qui prendront de leur temps pour me répondre :)
 

Pièces jointes

  • ongletautomatique.xls
    25.5 KB · Affichages: 72
  • ongletautomatique.xls
    25.5 KB · Affichages: 72
  • ongletautomatique.xls
    25.5 KB · Affichages: 73

pierrejean

XLDnaute Barbatruc
Re : Nom onglet automatique dans le tableau

bonjour lelia

Vois si cela te convient

dans un module standard

Code:
Sub les_noms()
Sheets("recapitulatif annuel").Range("B3:B25").ClearContents
ligne = 3
For n = 1 To Sheets.Count
  If Sheets(n).Name <> "recapitulatif annuel" Then
   Sheets("recapitulatif annuel").Cells(ligne, 2) = Sheets(n).Name
   ligne = ligne + 1
  End If
Next n
Range("B3:B" & Range("B65536").End(xlUp).Row).Sort Key1:=Range("B3"), Order1:=xlAscending
End Sub

et

Code:
Private Sub Worksheet_Activate()
Call les_noms
End Sub
 
Private Sub Workbook_Open()
Call les_noms
End Sub
 

Pièces jointes

  • ongletautomatique.xls
    49 KB · Affichages: 94
  • ongletautomatique.xls
    49 KB · Affichages: 94
  • ongletautomatique.xls
    49 KB · Affichages: 91

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

Encore merci à vous, cela fonctionne bien seulement existe t'il une solution plus simple ou pas? par exemple juste une formule qui reprend le nom de l'onglet que l'on souhaite dans ce tableau mais bien sur dans ce cas sans évolution j'essaye de voir la meilleure solution en fait.

merci d'avance de votre aide pierre jean
 

Ubot303

XLDnaute Occasionnel
Re : Nom onglet automatique dans le tableau

Bonjour,

Je ne vois pas de moyen plus simple car il s'agit quand même s'aller scanner tous les onglets et de rapatrier leur nom... Aucune fonction Excel à ma connaissance ne peut faire cela.
 

pierrejean

XLDnaute Barbatruc
Re : Nom onglet automatique dans le tableau

Re

Une autre solution pourrait etre d'utiliser la mise en place d'un nouveau nom pour creer la feuille correspondante (en recopiant par exemple un modele ou l'une des feuilles préexistantes)

edit Salut Ubot303
 

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

Bonjour,ubot

merci de ta précision

Seulement est il possible de ne pas prendre en compte le 1 er onglet? je suis dsl mais je ne maitrise pas les macros même si j'essaye de comprendre comme je peux :)

merci d'avance
 

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

oki merci de cette précision je sais maintenant à quoi sert cette ligne :)
J'ai un autre souci concernant la réponse de pierre jean, le problème est que mes feuilles du salarié 10 et 11 se mettent avant celle du salarié2 dans mon tableau récapitulatif pourquoi?

merci:)
 

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

D'accor pierre jean je préciserai sur le fichier de ne pas la changer merci à vous deux, votre aide est très précieuse et je pense que beaucoup de monde vous sont redevables ppour ça!!! :)
 

pierrejean

XLDnaute Barbatruc
Re : Nom onglet automatique dans le tableau

Re

Nouvelle macro

Code:
Sub les_noms()
'effacement de la zone recevant les noms
Sheets("recapitulatif annuel").Range("B3:B25").ClearContents
'ligne de debut d'ecriture
ligne = 3
'noms de feuille a exclure de la liste
aexclure = "michel,dupont"
'balayage de toutes les feuilles
For n = 1 To Sheets.Count
'si le nom de la feuille n'est pas recapi... et n'appartient
'pas a la liste a exclure
  If Sheets(n).Name <> "recapitulatif annuel" And InStr(aexclure, Sheets(n).Name) = 0 Then
  'ecrire dans la zone prévue
   Sheets("recapitulatif annuel").Cells(ligne, 2) = Sheets(n).Name
   ligne = ligne + 1
  End If
Next n
'tri alpha des noms afin de toujours les retrouver a la même place si les feuilles changent de place
Range("B3:B" & Range("B65536").End(xlUp).Row).Sort Key1:=Range("B3"), Order1:=xlAscending
End Sub
 

Pièces jointes

  • ongletautomatique.zip
    16.4 KB · Affichages: 53

Ubot303

XLDnaute Occasionnel
Re : Nom onglet automatique dans le tableau

Il est également possible de scanner tous les onglets et d'en retirer le nom de l'onglet Récap' (qui lui ne change pas) ;)
Du coup, on s'affranchit de la contrainte de la position de cet onglet.

PS : faut que je lise le nouveau post de PJ maintenant ;)
PS2 : ah ben c'est la même idée :p If Sheets(n).Name <> "recapitulatif annuel"
 

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

Merci beaucoup pierre jean pour ces explications c'est plus clair pour moi et je pourrais m'en inspirer pour mes autres macros!
Bonne soirée à bientôt peut être si je rencontre une autre difficulté:)
 

lelia10

XLDnaute Junior
Re : Nom onglet automatique dans le tableau

Cela fonctionne parfaitement pouvez vous juste me dire pourquoi si je copie un onglet ( sachant qu'ils sont tous identique) celui ci se place pas à la suite dans mon tableau? mais juste après le salarié 1!

Désolé j'abuse un peu,:)

encore merci
 

Discussions similaires

Statistiques des forums

Discussions
312 756
Messages
2 091 760
Membres
105 063
dernier inscrit
jazzinou