Nom du classeur Excel dans une cellule [Résolu/Fermé]

Signaler
-
 Thierry -
Bonjour,

Cherchant à afficher le nom du classeur dans une cellule, j'ai trouvé la formule =cellule("nomfichier"), mais elle affiche le chemin et le nom de la feuille en plus du nom du classeur.

Exemple : C:\Mes documents\Excel\[Nom classeur.xls]Feuil1

Est-ce qu'il existe une formule qui affiche uniquement le nom du classeur dans une cellule ?

Je précise que j'ai Excel 2000.

Merci d'avance,

Thierry.

7 réponses

Messages postés
17159
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
9 août 2020
4 165
Salut,

place cette formule dans une cellule qui te donnera le nom du fichier et son extension ex Classeur.xls

=STXT(CELLULE("filename";A1);TROUVE("[";CELLULE("filename";A1))+1;SOMME(TROUVE({"[";"]"};CELLULE("filename";A1))*{-1;1})-1)

et cette formule te donnera uniquement le nom du fichier sans l'extension pour les versions excel antérieure à 2007
=STXT(CELLULE("filename";A1);TROUVE("[";CELLULE("filename";A1))+1;SOMME(TROUVE({"[";"]"};CELLULE("filename";A1))*{-1;1})-5)

pour les version 2007 et 2010 remplacer le -5 à la fin par -6

=STXT(CELLULE("filename";A1);TROUVE("[";CELLULE("filename";A1))+1;SOMME(TROUVE({"[";"]"};CELLULE("filename";A1))*{-1;1})-6)

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57206 internautes nous ont dit merci ce mois-ci

Merci Mike pour votre réponse rapide, mais est-ce qu'il n'y aurait pas une formule plus simple ?
A+
Messages postés
1084
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
2 juin 2018
325
Plus simple oui, mais en macro avec ceci :
ThisWorkbook.Name
Mais encore faut-il connaître les macros, et pour une seule instruction, ça ne vaut pas le coup d'activer VBA.
Messages postés
1084
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
2 juin 2018
325
Essayez ça :
=STXT(A1;CHERCHE("[";CELLULE("filename";A1))+1;CHERCHE("]";CELLULE("filename";A1))-CHERCHE("[";CELLULE("filename";A1))-1)
Messages postés
1084
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
2 juin 2018
325
Mike 31 a été plus rapide sur le coup !
Merci Mic mais c'est bien compliqué.

Ce n'est pas par flemme de resaisir la formule (je peux toujours copier/coller le texte), mais j'aurais préféré quelque chose de plus simple pour ne pas rebuter ceux qui recevront le fichier.

Avec Excel 2007, j'aurais simplement coché l'option Première page différente et cliqué sur le bouton Nom du fichier.
Messages postés
17159
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
9 août 2020
4 165
Re,

J'ai apporté une explication au post précédent pour supprimer l'extension.
par formule difficile de faire plus court, cette formule est plus courte, et pour afficher ou supprimer l'extension la même règle s'applique. -1 à la fin affiche l'extension
-5 supprime l'extension de 3 caractères comme .xls et -6 les extensions de 4 caractères comme .xlsx

=STXT(CELLULE("filename");TROUVE("[";CELLULE("filename"))+1;SOMME(TROUVE({"[";"]"};CELLULE("filename"))*{-1;1})-5)

autrement par VBA mais es ce la peine
Messages postés
1084
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
2 juin 2018
325
Je confirme ce que dit Mike-31. Il n'y a pas plus simple que cette formulation, sauf avec du VBA (voir mon message #5).
Ma fonction est légèrement différente mais aboutit au même résultat.
Michel
Merci pour vos réponses nombreuses et rapides.

S'il n'y a pas plus simple, ce n'est pas grave. Excel n'a pas un opérateur qui le fait directement apparemment.

VBA, ce n'est pas la peine. ;-)

Thierry.