Passer au contenu principal

Comment ajouter plusieurs champs dans le tableau croisé dynamique?

Lorsque nous créons un tableau croisé dynamique, nous devons faire glisser les champs dans les étiquettes de ligne ou les valeurs manuellement un par un. Si nous avons une longue liste de champs, nous pouvons ajouter rapidement quelques étiquettes de ligne, mais les champs restants doivent être ajoutés à la zone Valeur. Existe-t-il des méthodes rapides pour ajouter tous les autres champs dans la zone Valeur en un seul clic dans le tableau croisé dynamique?

Ajouter plusieurs champs dans la zone de valeur du tableau croisé dynamique avec le code VBA


flèche bleue bulle droite Ajouter plusieurs champs dans la zone de valeur du tableau croisé dynamique avec le code VBA

Malheureusement, il n'y a pas de case à cocher pour que nous puissions vérifier rapidement tous les champs de la liste des champs du tableau croisé dynamique en un seul clic, mais, avec le code VBA suivant, il peut vous aider à ajouter les champs restants à la zone Valeurs à la fois. Veuillez procéder comme suit:

1. Après avoir créé le tableau croisé dynamique, vous devez tout d'abord ajouter les champs d'étiquette de ligne selon vos besoins et laisser les champs de valeur dans le Choisissez les champs à ajouter au rapport liste, voir capture d'écran: </ p>

doc-ajouter-champs-multiples-1

2. Maintenez le ALT + F11 clés pour ouvrir 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: ajoutez plusieurs champs dans la zone Valeur des tableaux croisés dynamiques dans la feuille de calcul active

Sub AddAllFieldsValues()
'Update 20141112
    Dim pt As PivotTable
    Dim I As Long
    For Each pt In ActiveSheet.PivotTables
        For I = 1 To pt.PivotFields.Count
            With pt.PivotFields(I)
              If .Orientation = 0 Then .Orientation = xlDataField
            End With
        Next
    Next
End Sub

4. Puis appuyez F5 clé pour exécuter ce code, tous les champs restants ont été ajoutés à la zone Valeurs en même temps, voir capture d'écran:

doc-ajouter-champs-multiples-1

Notes: Ce code VBA est appliqué à tous les tableaux croisés dynamiques de la feuille de calcul active.


Articles Liés:

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

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

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant 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 Kutools...
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...

Description


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 (23)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I am running this code. How much time does it take to complete? It's now 45 minutes it's still running. Please help me. By the way, my total field columns are 3600.
This comment was minimized by the moderator on the site
Hi, is there a way to add only the columns unseleted ones? thanks. 
This comment was minimized by the moderator on the site
Задача же не всегда стоит в получении списка, хочется допустим поправить названия таблиц или источников данных. Можете реализовать?
This comment was minimized by the moderator on the site
Is there a way to edit the macro that would send the fields into the rows label instead of the values?
This comment was minimized by the moderator on the site
If "Values are
"0" or "Null" how to suppress Row Values from Displaying

(ex. Sum of 2743 Difference)





Pivot "Rows"
Pivot "Values"





Row Labels





NP9 - Total Unexpended
Appropriations





Sum of OTHER Difference 1,045,355,165.31




Sum of 3200 Difference
0.00




Sum of 0108 Difference
12,873,630.29



Sum of 4586 Difference
(33,024,706.93)



Sum of 0148 Difference
(72,046,783.14)



Sum of 0129 Difference
(5,583,891.98)



Sum of 4598 Difference
(929,574.56)



Sum of 2743 Difference



Sum of 4041 Difference
0.00



Sum of 2799 Difference
This comment was minimized by the moderator on the site
Note: Che's error message:




Sub AddAllFieldsValues()




'Update 20141112



Dim
pt As PivotTable





Dim I As
Long





For Each
pt In ActiveSheet.PivotTables





For
I = 1 To pt.PivotFields.Count





End With







Next



Next




End Sub










Note: Che's trying to add the following
fields/snapshot- "Sum of OTHER Difference, Sum of 4096
Difference" over 80 fields to be
added







OTHER Difference



4096 Difference



4016 Difference
This comment was minimized by the moderator on the site
THANK YOU SO MUCH!!!
This comment was minimized by the moderator on the site
Thanks, helped me a lot
This comment was minimized by the moderator on the site
Works like a charm. Thanks
This comment was minimized by the moderator on the site
Hi.

It gives me a compile error when I click on Run

Please help
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