création d'un TCD avec code VBA

misswise

XLDnaute Nouveau
Salut;
Je suis débutante en VBA, j'ai besoin de créer un TCD automatique via code VBA.
La macro que j'ai développé ne s'exécute pas les pivotcatches restent vident, je sais pas pourquoi. Si quelqu'un pourrait m'aider je serais très reconnaissante.

Vous trouverez ci dessous mon code



Sub makepivottable()
Dim pt As PivotTable
Dim cacheofpt As PivotCache ' source des données
Dim pf As PivotField ' les noms des champs sont les pivot field
Dim pi As PivotItem ' les valeurs que prend chaque variable sont les pivot item



On Error Resume Next ' s'il ya càd pas de TCD le programme va passer à l'étape suivante
Sheets(pivot).Select
ActiveSheet.PivotTables(MyTable).TableRange2.Clear 'supprimer le TCD s'il existe
'create pivotcache

Sheets(Data).Select
Set cacheofpt = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=Sheets(Data).Range("a1:D14"), Version:=xlPivotTableVersion12)


'create pivot table
Sheets(pivot).Select
Set pt = pivot.PivotTables.Add(PivotCache:=caccheofpt, tabledestination:=Sheets(pivot).Range("A"), tablename:="MyTable")



With pt
.PivotFields("date").Orientation = xlColumnField
.PivotFields("nom").Orientation = xlRowField
End With
end sub
 

Pièces jointes

  • TCD.xlsm
    17.8 KB · Affichages: 94
  • TCD.xlsm
    17.8 KB · Affichages: 80
  • TCD.xlsm
    17.8 KB · Affichages: 89

Discussions similaires

Statistiques des forums

Discussions
312 115
Messages
2 085 455
Membres
102 891
dernier inscrit
cocowild