Passer au contenu principal

Comment répertorier tous les tableaux croisés dynamiques d'un classeur?

En supposant que vous ayez un grand classeur contenant plusieurs tableaux croisés dynamiques, vous souhaitez maintenant répertorier tous les tableaux croisés dynamiques de ce classeur, est-ce possible? Bien sûr, le code VBA suivant dans cet article vous rendra service. Pour en savoir plus, veuillez lire l'article ci-dessous.

Lister tous les tableaux croisés dynamiques d'un classeur avec le code VBA


flèche bleue bulle droite Lister tous les tableaux croisés dynamiques d'un classeur avec le code VBA

Le code VBA suivant peut vous aider à répertorier tous les noms de tableau croisé dynamique avec leurs attributs, tels que la plage de données source, le nom de la feuille de calcul, la date actualisée, etc.

1. Ouvrez votre classeur dans lequel vous souhaitez répertorier tous les tableaux croisés dynamiques.

2. Maintenez le ALT + F11 clés, et il ouvre le Fenêtre Microsoft Visual Basic pour Applications.

3Cliquez sur insérer > Moduleet collez le code suivant dans le Fenêtre du module.

Code VBA: liste tous les tableaux croisés dynamiques d'un classeur

Sub ListPivotsInfor()
'Update 20141112
    Dim St As Worksheet
    Dim NewSt As Worksheet
    Dim pt As PivotTable
    Dim I, K As Long
    Application.ScreenUpdating = False
    Set NewSt = Worksheets.Add
    I = 1: K = 2
    With NewSt
        .Cells(I, 1) = "Name"
        .Cells(I, 2) = "Source"
        .Cells(I, 3) = "Refreshed by"
        .Cells(I, 4) = "Refreshed"
        .Cells(I, 5) = "Sheet"
        .Cells(I, 6) = "Location"
        For Each St In ActiveWorkbook.Worksheets
            For Each pt In St.PivotTables
                I = I + 1
                .Cells(I, 1).Value = pt.Name
                .Cells(I, 2).Value = pt.SourceData
                .Cells(I, 3).Value = pt.RefreshName
                .Cells(I, 4).Value = pt.RefreshDate
                .Cells(I, 5).Value = St.Name
                .Cells(I, 6).Value = pt.TableRange1.Address
            Next
        Next
        .Activate
    End With
    Application.ScreenUpdating = True
End Sub

4. Puis appuyez F5 clé pour exécuter ce code, tous les noms de tableau croisé dynamique, la plage de données source, le nom de la feuille de calcul et d'autres attributs sont répertoriés dans une nouvelle feuille de calcul placée au début de votre feuille de calcul active, comme illustré ci-dessous:

doc-list-all-pivottable-1


Articles Liés:

Comment vérifier si un tableau croisé dynamique existe dans un classeur?

Comment ajouter plusieurs champs dans le tableau croisé dynamique?

Meilleurs outils de productivité bureautique

Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
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 et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

onglet kte 201905


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

  • Activer l'édition 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é de 50% et réduit des centaines de clics de souris chaque jour!
Comments (20)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
unfortunately I'm getting multiple errors, this would have been absolutely great for my multi-tab, multi-pivot workbooks
This comment was minimized by the moderator on the site
Fit perfeclty!! Thanks a lot
This comment was minimized by the moderator on the site
run time error 1004
This comment was minimized by the moderator on the site
Huge help, saved me a ton of time tracking down one of a number of identically named pivot tables in a Workbook!
This comment was minimized by the moderator on the site
That's Awesome.
This comment was minimized by the moderator on the site
VERY handy to have in a pinch! Thank you.
This comment was minimized by the moderator on the site
Thanks for the post, I cleaned up the code a little by defining I and Long and deleting the ref to K since it wasn't used. Lastly I added a line just below your .Activate to show .Columns.AutoFit
This comment was minimized by the moderator on the site
This is awesome! I have been looking for a code like this one, but with the addition of showing all active fields per table. I need to clean up the source tables from unnecessary fields (too heavy) and they feed a book of over 300 pivots. I'd prefer not to go one pivot table at a time to figure out which fields I can eliminate... If you could show me how, it would be incredible... Thanks!
This comment was minimized by the moderator on the site
Amazing!!! thksss!!!!
This comment was minimized by the moderator on the site
Saved me from a major headache!
Couldn't find what pivot table was causing a "Refresh All Error"
Boom Listed with locations, Thank you so much
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations