Tcd macro

Fermé
kiki - Modifié par kiki le 21/05/2015 à 10:48
Bonjour,

J'ai un problème avec ma macro je n'arrive pas a déplacé le cout de mes pièces dans la case de la valeur. j'ai séparer mes macros et quand je les sépare cela fonction bien quelqu'un pourrait m'expliquer le problème s'il vous plais?

Ma macro complête qui ne fonctionne pas.
Sub Tcd_graphique()
'
' Tcd_graphique Macro
'
Range("Dosier").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets( _
"Zone de critère").Range("D7:E8"), CopyToRange:=Range( _
"'Zone d''extraction'!Extract"), Unique:=False
Range("Dosier").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets( _
"Zone de critère").Range("D7:E8"), CopyToRange:=Range( _
"'Zone d''extraction'!Extract"), Unique:=False
Sheets("Zone d'extraction").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Zone d'extraction!R9C1:R244C2", Version:=xlPivotTableVersion10). _
CreatePivotTable TableDestination:="dossier!R20C12", TableName:= _
"Tableau croisé dynamique8", DefaultVersion:=xlPivotTableVersion10
Sheets("dossier").Select
Cells(20, 12).Select
ActiveWorkbook.ShowPivotTableFieldList = True
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields("Motif")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields( _
"Coûts des pièces")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("Tableau croisé dynamique8").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique8").PivotFields("Coût des pièces "), _
"Nombre de Coût des pièces ", xlCount
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields( _
"Nombre de Coût des pièces ")
.Caption = "Somme de Coût des pièces "
.Function = xlSum
End With
ActiveWorkbook.ShowPivotTableFieldList = False
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields("Motif")
.PivotItems("").Visible = False
End With
ActiveSheet.Shapes.AddChart.Select
ActiveChart.SetSourceData Source:=Range("'dossier'!$L$20:$M$30")
ActiveChart.ChartType = xlPie
ActiveChart.ApplyLayout (6)
ActiveChart.Location Where:=xlLocationAsObject, Name:="Graphique"
ActiveChart.ChartTitle.Text = _
"Pièces non prévues dans le recore" & Chr(13) & "Mois année" & Chr(13) & "Total €"
ActiveWorkbook.ShowPivotChartActiveFields = False

'
End Sub


et Voici les 3 macros qui fonction c'est le même code mais juste séparer.

 Sub TCD()
'
' TCD Macro
'

'
Range("Dosier").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets( _
"Zone de critère").Range("D7:E8"), CopyToRange:=Range( _
"'Zone d''extraction'!Extract"), Unique:=False
Range("Dosier").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets( _
"Zone de critère").Range("D7:E8"), CopyToRange:=Range( _
"'Zone d''extraction'!Extract"), Unique:=False
Sheets("Zone d'extraction").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Zone d'extraction!R9C1:R244C2", Version:=xlPivotTableVersion10). _
CreatePivotTable TableDestination:="dossier!R20C12", TableName:= _
"Tableau croisé dynamique8", DefaultVersion:=xlPivotTableVersion10
Sheets("dossier").Select
Cells(20, 12).Select
ActiveWorkbook.ShowPivotTableFieldList = True
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields("Motif")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields( _
"Coûts des pièces")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields( _
"Coûts des pièces").Orientation = xlHidden
ActiveSheet.PivotTables("Tableau croisé dynamique8").AddDataField
End Sub


Sub Macro6()
'
' Macro6 Macro
'

'
ActiveSheet.PivotTables("Tableau croisé dynamique8").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique8").PivotFields("Coût des pièces "), _
"Nombre de Coût des pièces ", xlCount
With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields( _
"Nombre de Coût des pièces ")
.Caption = "Somme de Coût des pièces "
.Function = xlSum
End With
ActiveWorkbook.ShowPivotTableFieldList = False
End Sub


With ActiveSheet.PivotTables("Tableau croisé dynamique8").PivotFields("Motif")
.PivotItems("").Visible = False
End With
ActiveSheet.Shapes.AddChart.Select
ActiveChart.SetSourceData Source:=Range("'dossier'!$L$20:$M$30")
ActiveChart.ChartType = xlPie
ActiveChart.ApplyLayout (6)
ActiveChart.Location Where:=xlLocationAsObject, Name:="Graphique"
ActiveChart.ChartTitle.Text = _
"Pièces non prévues dans le recore" & Chr(13) & "Mois année" & Chr(13) & "Total €"
ActiveWorkbook.ShowPivotChartActiveFields = False
End Sub


Voila Voila désolé pour la longueur du message et merci d'avance a ceux qui me répondront.

A voir également: