Bonjour
j'essaye de créer un TCD avec VBA. J'en enregistré une macro en créant depuis Excel. Puis j'ai commmencé à modifier des chaines pour les remplacer par des variables pour plus de souplesse. Quand j'essaye d'exécuter la création du TCD en seule instrcution, j'ai une erreur. Alors j'ai scindé en deux: creation du Pivotcache puis création du PivotTable. et c'est à l'appel pour la creation de PivotTable que j'ai l'erreur. Voici le bout de code
J'ai mis en rouge l'appel qui semble être la cause de l'erreur. les fonctions "getSourceTCDData et getTCDdestSheet" retournent respectivement les noms des feuilles sources des données en entrée et le nom de la feuille où sera mis le TCD. En pièce jointe un screenshot de l'appel et l'erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 ' ' CreationTCD_2 Macro ' Enregistrement creation TCD ' ' Dim objPivotCache As PivotCache Dim shSourceName As String Dim shDestName As String Sheets(getTCDdestSheet).Select Range("A1").Select shSourceName = getSourceTCDData & "!R1C1:R181C27" shDestName = getTCDdestSheet & "!R1C1" Set objPivotCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ shSourceName, Version:=6) objPivotCache.CreatePivotTable TableDestination _ :=shDestName, TableName:="PivotTable1", ReadData:=False, DefaultVersion:=6 'ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ ' shSourceName, Version:=6).CreatePivotTable TableDestination _ ' :=shDestName, TableName:="PivotTable1", DefaultVersion _ ' :=6
Merci pour vos conseils.
Clem 256
Partager