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.