Accéder au contenu principal

Comment créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement ?

Author: Xiaoyang Last Modified: 2025-05-27

Supposons que vous ayez un classeur contenant des centaines de feuilles de calcul. Naviguer vers une feuille spécifique parmi plusieurs peut poser problème pour la plupart d'entre nous. Dans ce cas, créer une table des matières pour ces feuilles peut vous aider à accéder rapidement et facilement à une feuille donnée. Ce tutoriel expliquera comment créer une table des matières pour toutes les feuilles et mettre à jour la table automatiquement lors de l'insertion, la suppression ou le changement de noms des feuilles.

Utiliser une formule pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Utiliser Kutools pour Excel pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Utiliser du code VBA pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement


Utiliser une formule pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Dans Excel, vous pouvez créer une table des matières en définissant un nom de plage et en référençant ce nom dans une formule. Suivez les étapes ci-dessous :

1. Insérez une nouvelle feuille avant toutes les autres feuilles où vous souhaitez créer la table des matières et renommez-la selon vos besoins.

2. Ensuite, cliquez sur "Formule" > "Définir un nom", voir capture d'écran :

click Define Name under Formula tab

3. Dans la boîte de dialogue "Nouveau nom", spécifiez un nom "Sheetlist" dans la zone "Nom", vous pouvez le changer à votre convenance, puis entrez la formule suivante dans la zone de texte "Fait référence à".

=GET.WORKBOOK(1)&T(NOW())

type a name and formula into the dialog box

4. Ensuite, cliquez sur le bouton "OK" pour fermer la boîte de dialogue.

5. Maintenant, rendez-vous sur la nouvelle feuille où vous souhaitez créer une table des matières, puis entrez la formule suivante dans une cellule vide :

=IFERROR(INDEX(MID(Sheetlist,FIND("]",Sheetlist)+1,255),ROWS($A$2:A2)),"")
Remarque : Dans la formule ci-dessus, "Sheetlist" est le nom de la plage que vous avez créé à l'étape 2.

6. Ensuite, faites glisser la poignée de recopie vers le bas jusqu'à ce que des cellules vides apparaissent, et tous les noms de feuilles (y compris les feuilles masquées) du classeur actuel seront listés comme indiqué dans la capture d'écran ci-dessous :

enter a formula and drag to display all sheet names

7. Ensuite, vous devez créer des hyperliens pour le contenu de la table. Utilisez la formule ci-dessous :

=HYPERLINK("#'"&A2&"'!A1","Go To Sheet")
Remarque : Dans la formule ci-dessus, "A2" est la cellule qui contient le nom de la feuille, et "A1" est la cellule où vous souhaitez accéder dans cette feuille. Par exemple, si vous cliquez sur le texte du lien hypertexte, il localisera la cellule A1 de cette feuille.

apply a formula to create hyperlinks for each sheet name

8. Maintenant, lorsque vous cliquez sur le texte du lien hypertexte, vous serez immédiatement redirigé vers cette feuille. Et si vous insérez une nouvelle feuille, supprimez une feuille ou changez le nom de la feuille, le contenu de la table sera mis à jour automatiquement.

Remarques :
  • 1. Avec cette méthode, toutes les feuilles masquées sont également affichées dans le contenu de la table.
  • 2. Vous devez enregistrer le fichier au format "Classeur Excel avec macros activées" afin que, lorsque vous ouvrirez ce fichier la prochaine fois, les formules fonctionnent correctement.

Utiliser Kutools pour Excel pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Si vous disposez de "Kutools pour Excel", son "Panneau de navigation" peut vous aider à lister tous les noms de feuilles dans un volet vertical à gauche, et à naviguer rapidement et facilement vers une feuille spécifique.

Kutools pour Excel propose plus de 300 fonctionnalités avancées pour simplifier les tâches complexes, augmentant ainsi la créativité et l'efficacité. Intégré à des capacités d'IA, Kutools automatise les tâches avec précision, rendant la gestion des données facile et sans effort. Informations détaillées sur Kutools pour Excel...  Essai gratuit...

Après avoir installé Kutools pour Excel, procédez comme suit :

1. Cliquez sur "Kutools" > "Navigation", voir capture d'écran :

Click Kutools > Navigation

2. Dans le volet "Navigation" développé, cliquez sur l'icône "Classeur et Feuille", tous les classeurs ouverts sont listés dans la zone de liste en haut, et toutes les feuilles visibles du classeur sont affichées dans la zone de liste en bas, voir capture d'écran :

 click Workbook & Sheet icon, all opened workbooks and all visible sheets are displayed in the pane

3. Et maintenant, vous pouvez accéder à la feuille simplement en cliquant sur le nom de la feuille dans le volet de gauche. Et lorsque vous supprimez, insérez ou renommez une feuille, la liste des feuilles dans le volet sera mise à jour dynamiquement.

Astuce : Par défaut, les feuilles masquées ne sont pas affichées dans le volet de navigation. Si vous souhaitez afficher les feuilles masquées, il vous suffit de cliquer sur l'icône "Appuyez sur le bouton pour afficher les feuilles de calcul masquées. Relâchez pour les masquer à nouveau.", cliquez à nouveau sur cette icône pour masquer immédiatement la feuille masquée.

 click the Toggle to unhide / hide all hidden worksheet(s) icon to display hidden sheets


Utiliser du code VBA pour créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Parfois, vous n'avez pas besoin d'afficher les feuilles masquées dans le contenu de la table. Pour résoudre ce problème, le code VBA suivant peut vous aider.

1. Insérez une nouvelle feuille avant toutes les autres feuilles où vous souhaitez créer la table des matières et renommez-la selon vos besoins. Ensuite, faites un clic droit sur l'onglet de la feuille et choisissez "Afficher le code" dans le menu contextuel, voir capture d'écran :

right click the sheet tab, and choose View Code

2. Dans la fenêtre "Microsoft Visual Basic for Applications" ouverte, copiez et collez le code ci-dessous dans la fenêtre de code de la feuille :

Code VBA : Créer une table des matières pour toutes les feuilles et la mettre à jour automatiquement

Private Sub Worksheet_Activate()
'Updateby ExtendOffice
Dim xWsh As Worksheet
Dim xWshs As Worksheets
Dim xShowHinddenWorkSheet As Boolean
Dim xI As Long
Dim xRg As Range
Dim xStrTitle, xStrTCHeader, xStrWShName As String
xShowHinddenWorkSheet = False 'Change this to True to display the hidden sheets as you need
xStrTitle = "A1"
xStrTCHeader = "A3"
On Error Resume Next
Application.ScreenUpdating = False
Me.Cells.Clear
Me.Range(xStrTitle).Font.Bold = True
Me.Range(xStrTitle).Font.Size = Me.Range(xStrTitle).Font.Size + 2
Me.Range(xStrTitle).Value = "Table of Contents"
Me.Range(xStrTCHeader).Value = "No."
Me.Range(xStrTCHeader).Offset(0, 1).Value = "Sheet Name"
Me.Range(xStrTCHeader).Resize(1, 2).Font.Bold = True
xStrWShName = Me.Name
xI = 1
For Each xWsh In Application.ActiveWorkbook.Worksheets
    If xWsh.Name <> xStrWShName Then
        If (xWsh.Visible = xlSheetVisible) Or xShowHinddenWorkSheet Then
            Me.Hyperlinks.Add Anchor:=Me.Range(xStrTCHeader).Offset(xI, 1), Address:="", SubAddress:="'" & xWsh.Name & "'!A1", TextToDisplay:=xWsh.Name
            Me.Range(xStrTCHeader).Offset(xI).Value = xI
            xI = xI + 1
        End If
    End If
Next
Application.ScreenUpdating = True
End Sub

copy and paste the code into the module

3. Ensuite, appuyez sur la touche "F5" pour exécuter ce code, et le contenu de la table est créé immédiatement dans la nouvelle feuille de calcul, toutes les feuilles masquées ne seront pas affichées dans le contenu de la table, voir capture d'écran :

run code to create a table contents

4. Désormais, lors de la suppression, insertion ou renommage de feuilles, le contenu de la table sera mis à jour dynamiquement.

Remarque : Vous devez également enregistrer le fichier Excel au format "Classeur Excel avec macros activées" pour que le code continue de fonctionner correctement lorsque vous ouvrirez le classeur la prochaine fois.

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionner l'analyse des données basée sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les Fonctions améliorées
Fonctionnalités populaires : Trouver, mise en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Consolider les colonnes ou les cellules sans perdre de données   |   Arrondir sans formule ...
Super RECHERCHEV : RECHERCHEV avec critères multiples    RECHERCHEV avec valeurs multiples  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante multi-sélection ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités en vedette : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Crypter/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 ensembles d'outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   50+ types de graphiques (Diagramme de Gantt, ...)   |   40+ formules pratiques (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils d'insertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et plus

Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !