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
Où
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:=xlPivotTableVersion14Merci Bcp ça marche bien !!