Informations NomOnglet_Classeur

Magic_Doctor

XLDnaute Barbatruc
VB:
Public Function NomOnglet_Classeur$(chx As Byte)
'- chx = 1 --> nom de l'onglet (ou feuille)
'- chx = 2 --> nom du classeur

   On Error Resume Next
   NomOnglet_Classeur = IIf(chx = 1, [A1].Parent.Name, [A1].Parent.Parent.Name)

End Function
 

Nairolf

XLDnaute Accro
Salut,

C'est sûr que c'est plus simple à utiliser que les fastidieuses formules suivantes :
Code:
=DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1)))
Code:
=STXT(CELLULE("nomfichier");CHERCHE("]";CELLULE("nomfichier"))+1;255)
 

Lolote83

XLDnaute Barbatruc
Bonjour,
La fonction est effectivement très bien mais nécessite du VBA alors que celle de Nairolf est directe via Excel.
Pour ceux et celles qui ne veulent pas de VBA, il auront donc maintenant le choix
@+ Lolote83
 

Magic_Doctor

XLDnaute Barbatruc
Bonjour Lolote83,

Normalement ce fil (ou plutôt ce groupe de fils) n'a été conçu que pour des fonctions en VBA.
En revanche, j'avoue que j'aurais été incapable de résoudre ce problème via les fonctions natives d'Excel.
 

Nairolf

XLDnaute Accro
A noter que je ne suis pas à l'origine de ces combinaisons de fonctions, mais comme je me souvenais que c'était possible avec la fonction CELLULE(), j'ai donc cherché sur le net au lieu de creuser par moi-même (j'ai été un peu fainéant, je sais 😅 ).
 

Magic_Doctor

XLDnaute Barbatruc
A noter que je ne suis pas à l'origine de ces combinaisons de fonctions, mais comme je me souvenais que c'était possible avec la fonction CELLULE(), j'ai donc cherché sur le net au lieu de creuser par moi-même (j'ai été un peu fainéant, je sais 😅 ).
On ne va pas à chaque fois réinventer la roue. Ça sert à ça le net !
Vous n'êtes pas fainéant, vous êtes cohérent.
 

Lolote83

XLDnaute Barbatruc
Bonjour à tous.
Merci Magic_Doctor pour cette intervention.
Normalement ce fil (ou plutôt ce groupe de fils) n'a été conçu que pour des fonctions en VBA.
C'est vrai que ce groupe de fils est uniquement pour des fonctions VBA. J'ai juste voulu dire qu'une fonction native existait. Je me suis aperçu de ma coquille au moment ou j'ai posté, mais rien n'enlève à la super fonction dont tu as fait part.
Bonne journée à tous.
@+ Lolote83
 

patricktoulon

XLDnaute Barbatruc
Bonjour a tous
perso si j'ai bien compris le but de la fonction elle donne soit le nom de la feuille ou se trouve la formule soit le nom du classeur
si c'est bien ca ,je me demande a quoi sert la cabriole du parent

edit : elle ne fonctionne pas en formule chez moi 2013
1619515741666.png


celle ci oui
VB:
Public Function NomOnglet_Classeur$(chx As Byte)
'- chx = 1 --> nom de l'onglet (ou feuille)
'- chx = 2 --> nom du classeur
'- chx = 3 --> chemin complet du classeur du classeur
    NomOnglet_Classeur = Array(ActiveSheet.Name, ThisWorkbook.Name, ThisWorkbook.Path & "\" & ThisWorkbook.Name)(chx - 1)
End Function
;)
 

Discussions similaires

Statistiques des forums

Discussions
312 194
Messages
2 086 069
Membres
103 110
dernier inscrit
Privé