Microsoft 365 Noms d'onglets sur une feuille

Tom_Jerry

XLDnaute Nouveau
Bonsoir à toutes et à tous,
Je souhaiterais reporter tous les noms d'onglets sur une seule et même feuille et de ceci à l'horizontale en cas de formule avec copie en série.
J'ai bien trouvé comment copier le nom d'un onglet actif sur une cellule de ce même onglet;

=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)
ou
=DROITE(CELLULE("filename";A1);NBCAR(CELLULE("filename";A1))-CHERCHE("]";CELLULE("filename";A1)))

mais je sèche à trouver la formule pour ma demande.

Merci d'avance de votre aide.

Bon dimanche.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @Tom_Jerry,

Un essai avec deux fonctions personnalisées. L'une donne le nom du premier onglet, l'autre le nom de l'onglet suivant. On peut exclure la feuille contenant la fonction personnalisée.
VB:
Function Onglet(Optional exclure) As String
Dim NomFeuille
  'retourne le nom du premier onglet
  'si l'argument exclure est présent, on saute la feuille contenant la formule
  Application.Volatile: On Error Resume Next
  NomFeuille = Application.Caller.Parent.Name
  Onglet = ""
  Onglet = ThisWorkbook.Sheets(1).Name
  If Onglet = NomFeuille And Not IsMissing(exclure) Then
    Onglet = ""
    Onglet = ThisWorkbook.Sheets(2).Name
  End If
End Function

Function OngletSuivant(xOnglet As String, Optional exclure) As String
Dim NomFeuille
  'retourne le nom de l'onglet qui suit l'onglet de nom xOnglet
  'retourne la chaine vide si dernier onglet ou bien si xOnglet est un nom incorrect
  'si l'argument exclure est présent, on saute la feuille contenant la formule
  Application.Volatile: On Error Resume Next
  NomFeuille = Application.Caller.Parent.Name
  OngletSuivant = ""
  OngletSuivant = ThisWorkbook.Sheets(ThisWorkbook.Sheets(xOnglet).Index + 1).Name
  If OngletSuivant = NomFeuille And Not IsMissing(exclure) Then
    OngletSuivant = ""
    OngletSuivant = ThisWorkbook.Sheets(ThisWorkbook.Sheets(xOnglet).Index + 2).Name
  End If
End Function
 

Pièces jointes

  • Tom_Jerry- Noms Onglets- v1.xlsm
    21.5 KB · Affichages: 8

Tom_Jerry

XLDnaute Nouveau
Bonjour,
Est-ce que tu as effectué une recherche sur google et/ou le forum?
Parce que le premier sujet de la liste de sujets similaires donne plusieurs solutions, que tu retrouveras un peu partout.
Cordialement.
Bonjour,
Oui j'ai bel et bien cherché, j'ai d'ailleurs mis dans ma requête les 2 formules que j'ai trouvée sur le net mais qui ne correspondent pas à ce que je désire faire. L'autre soucis c'est que quand on ne maîtrise pas trop la face cachée (la plus intéressante) d'Excel on est est un peu perdu, car on ne comprends pas des choses qui pour certains paraissent vraiment basiques ou anodines surtout pour des experts comme la plupart d'entre vous.
C'est un peu comme si je vous dis de me faire une mirepoix ! Et bien si vous n'êtes pas cuisinier vous ne saurez même pas que ce mot existe. Par contre il sera beaucoup plus facile de trouver ce qu'est une mirepoix sur internet qu'une formule Excel un peu particulière.
D'ailleurs en fouillant encore un peu j'ai trouvé une solution qu'a donné BOISGONTIER et qui fonctionne parfaitement.
Merci d'avoir un petit peu d’indulgence pour les novices et encore un grand merci pour votre aide.
Excellent dimanche à tous.

PS Mis à part ça j'ai quand même du chercher pour modifier la macro pour que ça fonctionne sur mon dossier et pour cela je n'ai pas posé de question, donc oui j'essaye au maximum de me débrouiller (Premièrement pour ne pas embêter et deuxièmement pour la fierté d'y arriver) même si si cela m'a pris un peu de temps et que cela n'abouti pas très souvent ;-)
Du coup je profites de poser une encore une petite question, qui apparemment n'est pas réalisable mais on ne sait jamais,.
Est-il possible de passer par une simple formule SANS MACROS ???
Merci.
 
Dernière édition:

Discussions similaires

Réponses
5
Affichages
215

Membres actuellement en ligne

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87