Bon j'ai réussi a adapter une macro mon problème est que je souhaite avoir une plage dynamique pour la colonne A a C
et c'est la que ça coince
voici le code
Sub create_TCD()
'Dimension des variables
Dim wshTCD As Worksheet
Dim PvtTCD As PivotTable
Dim maplage As Range
Dim DernLigne As Long, DernColonne As Integer
DernLigne = Range("A" & Rows.Count).End(xlUp).Row
DernColonne = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
'Affectation du TCD à la feuil 1
Set maplage = Range(Cells(3, 1), Cells(DernLigne, DernColonne))
Set wshTCD = Worksheets("Feuil1")
'Suppression de tous les TCD existants dans la feuille
For Each PvtTCD In wshTCD.PivotTables
PvtTCD.TableRange2.Clear
Next PvtTCD
'Ajout d'un TCD sur la feuille "TCD automatique"
Set PvtTCD = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:="maplage") _
.CreatePivotTable(tabledestination:=wshTCD.Range("H2"), TableName:="TCD_test")
'Ajout des champs au TCD
With PvtTCD
'Ajout d'une Ligne
With .PivotFields("ACTION")
.Orientation = xlRowField
.Position = 1
End With
'Ajout d'une Ligne
With .PivotFields("IDENTIFIANT")
.Orientation = xlRowField
.Position = 1
End With
'Ajout d'une Colonne
With .PivotFields("TEST")
.Orientation = xlColumnField
.Position = 1
End With
'Ajout d'une Valeur Cotisation
With .PivotFields("CATEGORIE")
.Orientation = xlDataField
End With
End With
End Sub