Tableau croisé dynamique - Création

Je joints le fichier suivant, avec la question suivante, car je commence à me tirer les cheuveux tellement je ne comprends pas ce qui bloque à chaque fois. :

Est-ce qu'il faut qu'AUCUNE cellule ne soit vide dans le rngPT ?

Bon.. tout fonctionne, mais je n'arrive pas vraiment à savoir pourquoi. Merci pour vos conseils en tout cas, je pense que cela a servi tout de même.

Je n'ai quasiment rien fait au code, aux feuilles.....

De plus, activer wsData s'est fait facilement alors qu'hier, même si je l'écrivais au même endroit qu'aujourd'hui, cela ne fonctionnait pas.

Bref j'ai peur d'avoir réussi sans vraiment avoir compris la source de l'erreur, même si je crois avoir bien compris le principe et les règles.

Questions subsidiaires :

-Est-ce possible de créer plusieurs TC en utilisant seulement ces 2 lignes ?

        Set PCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=rngPT.Address)
        Set PT = PCache.CreatePivotTable(TableDestination:="Calculation!R1C1", TableName:="TCD_one")

-Comment procéder pour ceci ?

Ca change quoi ?

Il colle ses données et à l'activation de la feuille TCD tu modifies juste la source et tu actualises...

Même plus de bouton.

eric

Merci d'avance.

Bonjour,

Comment procéder pour ceci ?

tu te mets en enregistrement de macro et tu auras le code sur un plateau. Plus qu'à l'épurer

eric

Bonjour,

Ton fichier modifié avec des commentaires.

Essaie d'utiliser des en-têtes abrégés !...

Pour créer un second TCD basé sur le même cache (rngPT) :

Set PT = PCache.CreatePivotTable(TableDestination:=wsCalculation.Cells(3,1), TableName:="TCD_two")

Tu auras préalablement déclarée et initialisé wsCalculation.

Cdlt.

Merci Jean-Eric,

En l'occurrence les en-têtes, bien que complexes parfois, ne me posent pas de problème.

Pour le reste cela fonctionne déjà bien mais je prends note des commentaires, merci.

Rechercher des sujets similaires à "tableau croise dynamique creation"