Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro TCD

BenoitMA

XLDnaute Nouveau
Bonjour,

Je souhaite créer une macro qui me permettrait de faire un TCD. Avec l'enregistreur de macro, j'obtiens le résultat ci-dessous :

Sub A_Sélection_échantillons()
'
Sheets("Données brutes").Select
Range("A1:CH13256").Select

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Données brutes!R1C1:R13256C86", Version:=xlPivotTableVersion14). _
CreatePivotTable TableDestination:="Gestion_spécif!R1C1", TableName:= _
"Tableau croisé dynamique1", DefaultVersion:=xlPivotTableVersion14
Sheets("Gestion_spécif").Select
Cells(1, 1).Select
ActiveWorkbook.ShowPivotTableFieldList = True

.....


Problème : Mon range est variable en colonne et en ligne et par conséquence quand je lance ma macro j'obtiens le message d'erreur suivant : "Le nom du champ de tableau croisé dynamique n'est pas valide."
Il me faut donc une méthode pour réactualiser mon range en fonction du nombre de données.
Auriez-vous une solution à m'apporter ?

Benoit
 

JCGL

XLDnaute Barbatruc
Re : Macro TCD

Bonjour à tous,

Bienvenue sur XLD

Utilise un Tableau et récupère le nom



A+ à tous
 

Pièces jointes

  • Capture 1.png
    7.2 KB · Affichages: 167
  • Capture 1.png
    7.2 KB · Affichages: 156

BenoitMA

XLDnaute Nouveau
Re : Macro TCD

Merci JCGL pour ta réponse.

Mais le tableau ne me parait pas très simple à utiliser. Es-ce qu'il ne serait pas plus simple de rechercher la dernière ligne et dernière colonne non vide ?

Benoit
 

BenoitMA

XLDnaute Nouveau
Re : Macro TCD

Bonjour,

Pour le tableau, j'obtiens ça :

Sheets("Données brutes").Select
Range("A1").Select
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$DJ$19209"), , xlYes).Name _
= "Tableau1"
Range("Tableau1[#All]").Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Tableau1", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="Feuil2!R3C1", TableName:="Tableau croisé dynamique1", _
DefaultVersion:=xlPivotTableVersion14


Et quand mon nombre de colonne ou ligne changent, je reviens au même problème qu'au début. Ai-je oublier quelques chose ?

Benoit
 

chris

XLDnaute Barbatruc
Re : Macro TCD

Bonjour

Non car si tu ajoutes des lignes elles sont automatiquement prise en compte dans la définition de Tableau1 (qu'il vaut mieux baptiser d'un nom plus parlant)
 

Discussions similaires

Réponses
1
Affichages
534
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…