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
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
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.
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 ).
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 ).
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
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
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