Nous avons vu précédemment comment afficher le nom de feuilles sur Excel. Je vous avais promis une deuxième méthode.
Elle est plus simple à mettre en œuvre mais comporte un risque.
Prérequis
Afin que cette méthode fonctionne, il faut que le fichier le langage Virtual Basic. Ce dernier permet notamment de créer des macros dans Excel.
Pour cela, il suffit de transformer votre fichier xls/xlsx en xlsm
- Dans votre fichier Excel, sur le ruban, cliquez sur Fichier puis Enregistrer sous.
- Cliquez sur l’emplacement où vous souhaitez enregistrer le nouveau fichier. Moi, j’ai choisi Parcourir.
- Dans le champ Type, sélectionnez Classeur Excel (prenant en charge les macros) puis cliquez sur Enregistrer
Fonction LIRE.CLASSEUR
Principe
La fonction LIRE.CLASSEUR est ce qu’on appelle une fonction macro. Elle renvoie les noms des feuilles du classeur Excel.
Syntaxe
LIRE.CLASSEUR(1)
Mise en pratique
J’ai besoin de récupérer le nom des feuilles mais le problème est que la fonction est macro. Donc on ne peut mettre la formule de calcul dans une cellule.
Pour qu’elle fonctionne, il faut mettre la formule dans le gestionnaire de noms.
- Dans le menu, allez dans l’onglet Formules
- Cliquez sur Gestionnaire de noms puis Nouveau…

Dans la fenêtre de dialogue qui s’est ouverte, saisissez les informations suivantes :
- Dans le champs nom, choisir celui qui vous convient. Moi, j’ai choisi _NomsFeuilles
- Dans le champs Fait référence à, rentrez la formule suivante
=LIRE.CLASSEUR(1)
- Cliquez sur OK puis Fermer pour revenir à votre classeur Excel.

=_NomsFeuilles

Comme vous le constatez ci-dessus, Excel affichage les noms de l’ensemble des feuilles du classeur.
Seul défaut, il affiche également le nom du classeur (fichier).
Fonction REMPLACER
Principe
La fonction REMPLACER remplace une chaîne de caractères par une autre, en délimitant le nombre de caractères.
Syntaxe
REMPLACER(ancien_texte, no_départ, no_car, nouveau_texte)
avec les arguments suivants :
ancien_texte (Argument obligatoire) : Représente le texte dont vous voulez remplacer un nombre donné de caractères.
no_départ (Argument obligatoire) : Position du premier caractère de la chaîne ancien_texte à remplacer.
no_car (Argument obligatoire) : Nombre de caractères d’ancien_texte à remplacer
nouveau_texte (Argument obligatoire) : Représente le texte qui remplacera l’ancien_texte.
Mise en pratique
Il y a deux possibilités :
- utiliser la fonction dans une nouvelle cellule
- modifier la formule dans le gestionnaire de noms. je préfère cette solution.
On obtient les arguments suivants :
- ancien_texte :
LIRE.CLASSEUR(1)
- no_départ :
On commence par le 1er caractère soit
1
- no_car :
Nous allons utiliser la fonction TROUVE pour trouver la position du ]
TROUVE("]";LIRE.CLASSEUR(1)))
- nouveau_texte
Comme on veut supprimer le texte contenant le fichier, on utiliser les guillemets «
""
Dans le gestionnaire de noms, on remplace la formule
=LIRE.CLASSEUR(1)
par
=REMPLACER(LIRE.CLASSEUR(1);1;TROUVE("]";LIRE.CLASSEUR(1));"")
Rendre dynamique l'affichage
Problème actuel
Ce système n’est pas parfait à l’heure actuel. Il convient si on fait fait aucun changement au niveau des feuilles du classeur. Or, les changements ne seront pas actualisés dans les cas suivants :
- ajouter une feuille
- modifier une feuille existante,

J’ai modifié le noms des 3 feuilles existantes et ajouté une 4e. Or, les cellules affiche toujours les 3 anciens noms des feuilles existantes.
Même en appuyant sur F9 (raccourci pour recalculer toutes les formules de calcul), cela ne change rien.
Solution
Nous allons légèrement modifier notre formule de calcul qui se trouve dans le gestionnaire de noms. On va associer une autre fonction macro à LIRE.CLASSEUR(1) : T(MAINTENANT())
Pour les associer, il suffit d’ajouter une esperluette & entre les deux fonctions.
Mise en pratique
On remplace la formule :
=REMPLACER(LIRE.CLASSEUR(1);1;TROUVE("]";LIRE.CLASSEUR(1));"")par
=REMPLACER(LIRE.CLASSEUR(1) & T(MAINTENANT());1;TROUVE("]";LIRE.CLASSEUR(1) & T(MAINTENANT()));"")Lorsque vous modifiez les noms des feuilles, l’affichage des noms dans les cellules s’actualisera.

Lorsque vous ajoutez une nouvelle feuille, l’affichage ne sera pas actualisé.
Pour que cela fonctionne, vous devez :
- Appuyer sur F9 si vous souhaitez garder le nom par défaut
- Modifier le nom de la feuille
