Bonjour,
je souhaite faire un tableau croisé dynamique via VBA. J'ai Excel 2010. J'ai lu pas mal de forums, et j'ai aussi fait un test avec l'enregistreur de macro. Voici mon code :
wbOut est mon workbook de sortie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 wbOut.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ "MAT_DCP!R2C3:R10C21", version:=xlPivotTableVersion14).CreatePivotTable _ TableDestination:="TCD!R3C1", TableName:="Mon TCD", _ DefaultVersion:=xlPivotTableVersion14
dans ce workbook, les feuilles MAT_DCP et TCD existent déjà. Je souhaite simplement prendre les cellules C2:U10 de la feuille MAT_DCP, en faire un tableau croisé dynamique que je mettrai dans la cellule C3 de la feuille TCD.
Je n'arrive pas à voir où se trouve mon erreur (argument ou appel de procédure incorrect).
J'ai alors essayé de repomper le code ci-dessous (je l'ai adapté) que j'ai trouvé sur un forum :
J'ai exactement la même erreur, mais à la ligne set PT = ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dim PTCache As PivotCache Dim PT As PivotTable Sheets("MAT_DCP").Select Set PTCache = ActiveWorkbook.PivotCaches.Add _ (SourceType:=xlDatabase, _ SourceData:=range("C2").CurrentRegion.Address) Set PT = PTCache.CreatePivotTable _ (TableDestination:="TCD!C5", _ TableName:="Tableau croisé dynamique1")
Dans mon 1e code, voyez-vous mon erreur svp ?
D'avance merci
Cordialement,
Partager