Bonjour à tous
Une solution ci-joint avec un TCD sur un autre onglet (à masquer)
Un segment lié au TCD permet de récupérer la valeur sélectionnée
(grâce à la fonction donnée ici https://www.jkp-ads.com/articles/slicers05.asp)
et déclenche le filtre par l'événement WorkSheet_PivotTableUpdate de la feuille portant le TCD
J'ai fait une boucle qui allège nettement le code du filtre
Sub filtre()
Application.ScreenUpdating = False
vmeteo = GetSelectedSlicerItems("Segment_Cas_possibles")
For Each Tableau In Worksheets("R1").ListObjects
If vmeteo <> "All Items" Then
Tableau.Range.AutoFilter Field:=1, Criteria1:=vmeteo
Else
Tableau.Range.Cells(1, 1).Select
ActiveSheet.ShowAllData
End If
Next
End Sub
Je ne saurais trop te conseiller néanmoins de nommer correctement tes tableaux et ne pas garder les noms automatiques qui n'ont aucune signification...