Fameuse Erreur n°5 sur TCD
Bonjour.
Dans mon classeur, j'ai une feuille Extract.
A partir de cette feuille, je veux créer un TCD. Mais lors de la création de ce TCD, j'ai l'erreur numéro 5.
J'ai fais des recherches: j'ai essayé de changer le nom du TCD, la destination etc... mais rien n'y fait.
Pouvez-vous me débogguer svp ?
MercI.
Sub TCD()
Dim feuilleTCD
Application.DisplayAlerts = False
Sheets("Stat SSE 2012").Delete
Sheets.Add
ActiveSheet.Name = "Stat SSE " & Year(Now)
Set feuilleTCD = Sheets("Stat SSE " & Year(Now))
Sheets("Export").Select
Sheets("Export").UsedRange.Name = "table"
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"table", Version:=xlPivotTableVersion14).CreatePivotTable TableDestination:="Stat SSE " & Year(Now) & "!R1C1", _
TableName:="Tableau croisé dynamique1", DefaultVersion:=xlPivotTableVersion14
With feuilleTCD
.PivotTables ("Tableau croisé dynamique1")
.PivotFields ("Année")
.Orientation = xlPageField
.Position = 1
.CurrentPage = "" & Year(Now)
.PivotFields ("CF")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique1").PivotFields("Date"), _
"Nombre de Date", xlCount
End Sub
Bonjour,
Pourquoi avoir créé un nouveau fil plutôt que de rester ici --> https://forum.excel-pratique.com/excel/alimenter-automatiquement-un-filtre-de-tcd-t30890.html
Logique ton souci, l'objet feuille n'est pas déclaré lors de la création du TCD.
Essaie plutôt comme ceci :
Sub TCD()
Dim feuilleTCD
Application.DisplayAlerts = False
Sheets("Stat SSE 2012").Delete
Sheets.Add.Name = "Stat SSE " & Year(Now)
Set feuilleTCD = Sheets("Stat SSE " & Year(Now))
Sheets("Export").UsedRange.Name = "table"
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:="table").CreatePivotTable _
TableDestination:=feuilleTCD.Range("A3"), _
TableName:="Tableau croisé dynamique1"
With feuilleTCD.PivotTables ("Tableau croisé dynamique1")
.PivotFields ("Année")
.Orientation = xlPageField
.CurrentPage = "" & Year(Now)
.PivotFields ("CF")
.Orientation = xlRowField
End With
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique1").PivotFields("Date"), _
"Nombre de Date", xlCount
End Sub
Si ok, clique sur le V vert à coté du bouton Editer pour cloturer le fil
Amicalement
Effectivement.
En déclarant feuilleTCD as Worksheet, je n'ai plus l'erreur n°5.
Merci DAN , j'étais un peu mal luné.