Re,
Ton code n'est pas placé comme te l'as expliqué cousinhub. Il est placé dans la feuille "Saisie rempl." au lieu de celle concernée par le TCD. Enlève le de cette feuille et replace le dans la feuille contenant le TCD.
Tu peux aussi essayer ce code qui mettra directement à jour le TCD lorsque tu cliqueras sur l'onglet "Staff rempl." en question.
Private Sub Worksheet_Activate()
Dim PVi As PivotItem
On Error Resume Next
With Application
.ScreenUpdating = False
For Each PVi In Me.PivotTables("Tableau croisé dynamique1").PivotFields("date").PivotItems
PVi.Visible = (CDate(PVi) >= Date)
Next PVi
End With
End Sub
Code à placer dans la feuille "Staff rempl."
Pour l'onglet "Tous rempl.", même code à placer mais en changeant la réf du TCD --> Tableau croisé dynamique2
Si ok, n'oublie pas de cocher le V en vert pour cloturer le fil.
Amicalement
Edit Dan : Je vois qu'il y a de vieux items inutilisés dans tes TCD. Si souci, tu peux exécuter le code que j'ai placé dans ce lien --> https://forum.excel-pratique.com/excel/macro-modification-cellule-selon-critere-t12693-10.html