TCD avec filtre entre deux dates - Macro VBA

13exemple.xlsm (280.69 Ko)
Bonjour,

Je suis nouveau ici et aussi en VBA.

En feuille "Feuil1" j'ai le tableau avec les données (la base).
En feuille "tcd" j'ai le tableau croisé dynamique lié au tableau de la Feuil1. Dans cette feuille en colonne T et U j'ai des dates.

-Je voudrais avec un macro pouvoir cocher au TCD dans le filtre Date par exemple que les dates comprises entre 20/10/2021 (cellule T1) et le 26/10/2021 (cellule U1) et décocher toutes les autres dates.
-Je voudrais avec un macro pouvoir cocher au TCD dans le filtre Date par exemple que les dates comprises entre 26/09/2021 (cellule T2) et le 26/10/2021 (cellule U2) et décocher toutes les autres dates.
-idem entre la date T3 et U3
-idem entre la date T4 et U4
-idem entre la date T5 et U5

Si vous pouvez m'aider s'il vous plait.

Merci

Jack

Bonjour et Bienvenue

Faites une petite présentation de vous ici --> https://forum.excel-pratique.com/presentations

Essayez avec ce code

Sub Macro1()
'Dan
Dim pi As PivotItem
Dim DateMin As Date, DateMax As Date

DateMin = Range("T2")
DateMax = Range("U2")
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date")
    .ClearAllFilters
    .EnableMultiplePageItems = True 'False
    .CurrentPage = "(All)"
    For Each pi In .PivotItems
        On Error Resume Next
        If Format(CDate(pi.Value), "mm-dd-yyyy") < CDate(DateMax) Then
            If Format(CDate(pi.Value), "mm-dd-yyyy") >= CDate(DateMin) Then
            pi.Visible = True
            Else: pi.Visible = False
        End If
        End If
    Next pi
End With
End Sub

Pour l'exemple j'ai utilisé T2 et U2 pour les deux dates concernées

Cordialement

@78Chris : merci de l'info !

@Jackdu95 : Il est de bonne habitude de tout de même informer que l'on a fait la même demande sur un autre forum, ne fusse que par correction vis à vis des membres qui passent du temps à chercher une solution qui est peut être déjà trouvée ailleurs et dont ils n'ont pas connaissance.
Merci de votre compréhension.

Rechercher des sujets similaires à "tcd filtre entre deux dates macro vba"