MAJ TCD automatique

  • Initiateur de la discussion adam
  • Date de début
A

adam

Guest
Bonjour,

Je voudrais savoir si on peut automatiser la mise à jour d'un tableau croisé dynamique qui utilise un tableau avec une hauteur de lignes variable.

code:
Sub essai()
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
''id group'!R1C1:R3374C155').CreatePivotTable TableDestination:='', _
TableName:='Tableau croisé dynamique2', DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveWorkbook.ShowPivotTableFieldList = True
With ActiveSheet.PivotTables('Tableau croisé dynamique2').PivotFields( _
'aze')
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables('Tableau croisé dynamique2').PivotFields( _
'uip')
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables('Tableau croisé dynamique2').AddDataField ActiveSheet. _
PivotTables('Tableau croisé dynamique2').PivotFields('uip'), _
'Somme de uip', xlSum
End Sub


Peut on remplacer 'R1C1:R3374C155'?Ou doit on se contenter d'agrandir la sélection manuellement?
 

Droussel

XLDnaute Occasionnel
le mieux ne serait-il pas de donner un nom à ton tableau comme cela si tu inseres des lignes ou colonnes le nom évolue avec les dimensions du tableau

si tu n'inseres pas de lignes mais que tu en ajoutes il te faut calculer la derniere cellule de ton tableau avec le code
range...offset ...xldown

ai je répondu ?
Denis
 

Dan

XLDnaute Barbatruc
Bonsoir,

deux méthodes possibles pour faire ce que tu demandes :

1. Methode 1.
Après avoir sélectionné la plage, tu lui donnes un nom via menu/inserttion/nom/définir
Ensuite, tu places ce nom dans ta macro comme suit :
Exemple si nom = TATA
Code:
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
'TATA'.CreatePivotTable TableDestination:='', _
TableName:='Tableau croisé dynamique2', DefaultVersion:= _
xlPivotTableVersion10.....
2. Methode 2
Tu nommes ta plage dans la macro et tu utilises ce nom dans ta macro.
Je t'invite à consulter ce que je postais le 28/12/05 dans la rubriuqe constitution du TCD. Le fil -->Lien supprimé

Si pb n'hésite pas

;)

Edition : Cette proposition considére que tu refais ton TCD à chaque fois et ce, en utilisant cette macro Si le TCD doit rester tel quel il y a d'autres méthodes pour faire la mise à jour. Dans ce cas, vois ce fil :Lien supprimé.

Message édité par: Dan, à: 21/06/2006 20:59
 

Discussions similaires

Réponses
1
Affichages
496

Statistiques des forums

Discussions
311 725
Messages
2 081 945
Membres
101 849
dernier inscrit
florentMIG