Bonjour,
j'ai un problème avec deux macros, lorsque j'essaye de les excécuter , j'ai un message d'erreur:Erreur d'exécution '1004': Impossible de lir la propriété PivotFields de la classe PivotTable. Quelqu'un peut m'aide s'il vous plait ??? Merci d'avance !!
Première macro:
Sub Mot()
'Attente cause bug inexpliqué sur ligne suivante
Application.Wait (Now + TimeValue("0:00:01"))
'Cacher les 4 champs variables
On Error Resume Next 'Gestion d'erreur si champ déjà masqué
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur).Orientation = xlHidden
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Endurance).Orientation = xlHidden
On Error GoTo 0 'Retour au mode de gestion d'erreur classique
'Afficher le champ correspondant au mode d'analyse : Champ Famille Moteur
With Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur)
.Orientation = xlRowField
.Position = 1
.Subtotals = Array(False, False, False, False, False, False, False, False, False, False, False, False)
End With
'Masquer l'item (vide) dans le champ d'analyse
'Gestion d'erreur si la valeur du champ n'existe pas
On Error Resume Next
'Champ Famille Moteur
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur).PivotItems("(vide)").Visible = False
On Error GoTo 0
End Sub
deuxieme macro:
Sub Mot_Endurance()
'Attente cause bug inexpliqué sur ligne suivante
Application.Wait (Now + TimeValue("0:00:01"))
'Cacher les 4 champs variables
On Error Resume Next 'Gestion d'erreur si champ déjà masqué
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur).Orientation = xlHidden
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Endurance).Orientation = xlHidden
On Error GoTo 0 'Retour au mode de gestion d'erreur classique
'Afficher les champs correspondant au mode d'analyse
'Champ Famille Moteur
With Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur)
.Orientation = xlRowField
.Position = 1
.Subtotals = Array(False, False, False, False, False, False, False, False, False, False, False, False)
End With
'Champ Endurance
With Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Endurance)
.Orientation = xlRowField
.Position = 2
.Subtotals = Array(False, False, False, False, False, False, False, False, False, False, False, False)
End With
'Masquer l'item (vide) dans les deux champs
'Gestion d'erreur si la valeur du champ n'existe pas
On Error Resume Next
'Champ Famille Moteur
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Famille_Moteur).PivotItems("(vide)").Visible = False
'Champ Endurance
Sheets("Dynamique").PivotTables("Tableau croisé dynamique1").PivotFields(Lib_Endurance).PivotItems("(vide)").Visible = False
On Error GoTo 0
End Sub