VBA PivotTable Filter lorsqu'il existe

Bonjour, je travaille sur VBA dans Excel pour que mon filter fonctionne dans la table pivot. J'ai mis un champ dans la section de filter et je ne veux que marquer "Facture de count" et "Match manuel". Voici mon code:

With wsPvtTbl.PivotTables("PivotTable1").PivotFields("Type") .PivotItems("Approve").Visible = False .PivotItems("Error").Visible = False .PivotItems("Interface Validation").Visible = False .PivotItems("Invoice Validation").Visible = False .PivotItems("Account Invoice").Visible = True .PivotItems("Manual Match").Visible = False End With 

Le problème se pose car, parfois, datatables source ne contiennent pas d'élément "Erreur", il y aura un bug lors de ".PivotItems (" Erreur "). Visible = False"

Y a-t-il un moyen de le réparer? Merci beaucoup.

Cela fonctionnera-t-il?

 .... On Error Resume Next .PivotItems("Error").Visible = False On Error Goto 0 .... .... .... On Error Resume Next .PivotItems("Error").Visible = False On Error Goto 0 .... 

On Error Resume Next tolérera la non-existence des éléments pivots "Error". Donc, il est caché s'il existe . Ensuite, On Error Goto 0 rétablira une gestion d'erreur normale afin que d'autres erreurs dans le code ne soient pas ignorées.

Alternativement, vous pouvez mettre ces deux instructions au début et à la fin de l'extrait de code, de sorte que tout élément pivot non existant ne brise pas le code.