filtrer imprimer un graphique croisé dynamique avec une macro

  • Initiateur de la discussion Initiateur de la discussion julball
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

julball

XLDnaute Nouveau
Bonjour,
Après multitudes de recherches, ici et ailleurs... je vous demande de l'aide.

Je souhaiterai à partir d'un graphique croisé dynamique (sur feuil "GRAPH" dans mon fichier) issu d'un tableau de données (sur feuil "NE PAS TOUCHER") créer un macro qui filtrerait et imprimerait le graphique CODE_MACH par CODE_MACH.
les CODE_MACH sont ABM2, GN2, GN3...
Exemple: filtre sur ABM2 et impression du graph, puis filtre sur GN2 et impression du graph, puis filtre sur GN3 et impression du graph.....
Seulement sur ma macro dès que je la lance j'ai le message suivant:
Erreur d'exécution '1004':
Impossible de lire la propriété PivotFields de la classe PivotTable.

Mon fichier fai 30Mo je ne peut donc pas le joindre mais voici ma macro:
Sub IMPRESSION()
'
' IMPRESSION Macro
'

'
ActiveSheet.ChartObjects("Graphique 1").Activate
With ActiveSheet.PivotTables("ARRETS").PivotFields("CODE_MACH")
.PivotItems("GN2").Visible = False
.PivotItems("GN3").Visible = False
.PivotItems("MAV1").Visible = False
.PivotItems("MAV10").Visible = False
.PivotItems("MAV11").Visible = False
.PivotItems("MAV12").Visible = False
.PivotItems("MAV2").Visible = False
.PivotItems("MAV3").Visible = False
.PivotItems("MAV4").Visible = False
.PivotItems("MAV5").Visible = False
.PivotItems("MAV6").Visible = False
.PivotItems("MAV7").Visible = False
.PivotItems("MAV8").Visible = False
.PivotItems("MAV9").Visible = False
.PivotItems("(blank)").Visible = False
End With
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1
ActiveSheet.ChartObjects("Graphique 1").Activate
With ActiveSheet.PivotTables("ARRETS").PivotFields("CODE_MACH")
.PivotItems("ABM2").Visible = False
.PivotItems("GN2").Visible = True
End With
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1
ActiveSheet.ChartObjects("Graphique 1").Activate
With ActiveSheet.PivotTables("ARRETS").PivotFields("CODE_MACH")
.PivotItems("GN2").Visible = False
.PivotItems("GN3").Visible = True
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

Lorsque je debogue, j'ai cette ligne qui est en JAUNE:
ActiveSheet.ChartObjects("Graphique 1").Activate
With ActiveSheet.PivotTables("ARRETS").PivotFields("CODE_MACH")

Je suis novice, et ne parviens pas à faire cette macro.... quelqu'un pourrait m'aider SVP?
Merci d'avance
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
1 K
Retour