Macro TCD

Bonjour tout le monde,

Je souahite créer un TCD à l'aide d'une macro

J'ai tenté d'en enregistrer une; mais comme je m'y attendais lorsque je rajoute des lignes dans mon tableau de valeurs (en feuille1), mon TCD ne me les compte pas ..

Voici ma macro enregistrée:

Sheets("Feuil1").Select

Sheets.Add

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _

"Feuil1!R1C1:R556C20", Version:=xlPivotTableVersion14).CreatePivotTable _

TableDestination:="Feuil4!R3C1", TableName:="Tableau croisé dynamique1", _

DefaultVersion:=xlPivotTableVersion14

Sheets("Feuil4").Select

Cells(3, 1).Select

With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _

"Clé de rapprochement")

.Orientation = xlRowField

.Position = 1

End With

With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _

"Compte Compensateur")

.Orientation = xlRowField

.Position = 2

End With

With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _

"Type Produit")

.Orientation = xlRowField

.Position = 3

End With

ActiveSheet.PivotTables("Tableau croisé dynamique1").AddDataField ActiveSheet. _

PivotTables("Tableau croisé dynamique1").PivotFields("Clé de rapprochement"), _

"Nombre de Clé de rapprochement", xlCount

ActiveSheet.PivotTables("Tableau croisé dynamique1").AddDataField ActiveSheet. _

PivotTables("Tableau croisé dynamique1").PivotFields("Ecart second niveau"), _

"Somme de Ecart second niveau", xlSum

End Sub

Donc ma question est la suivante: Comment faire pour que ma macro fonctionne si ma plage de donnée augmente ou diminue (nombre de ligne) présente en feuille1 ? (Mes champs, en tête de colonne seront toujours les mêmes)

Merci d'avance pour vos réponses

Si ce n'est pas clair, je suis à votre disposition

Bonsoir,

Essaye de modifier les lignes comme ça et teste :

 Dim derLig As Integer
 Sheets("Feuil1").Select
 derLig = Range("A" & Rows.Count).End(xlUp).Row
 Sheets.Add
 ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
 "Feuil1!R1C1:R" & derLig & "C20", Version:=xlPivotTableVersion14).CreatePivotTable _
 TableDestination:="Feuil4!R3C1", TableName:="Tableau croisé dynamique1", _
 DefaultVersion:=xlPivotTableVersion14

Merci Bcp ça marche bien !!

Rechercher des sujets similaires à "macro tcd"