j'utilise un TCD avec un filtre sur un champ Date.
j'ai enregistré une macro me permettant de filtrer une date en particulier.
Excel me géneèe un code avec autant de lignes à ne pas afficher que de dates non sélectionnées dans le filtre du genre :
.PivotItems("1/3/2012").Visible = True (La date sélectionnée)
et
.PivotItems("1/4/2012").Visible = False
.PivotItems("1/8/2012").Visible = False
.PivotItems("1/17/2012").Visible = False
.PivotItems("1/26/2012").Visible = False
.PivotItems("2/4/2012").Visible = False
.PivotItems("2/13/2012").Visible = False
.PivotItems("2/22/2012").Visible = False
.....................
pour les dates non sélectionnées.
J'aimerai modifié le code de façon à pouvoir filtre mon TCD pour n'avoir que les dates d'une période, par exemple :
<= 30/06/2012
ou
>=1/1/202 et <=31/03/2012.
J'ai essayé de définir une variable (ex FINPERIODE) pour pouvoir saisir ma date et la récupérer dans le filtre, mais je ne sais pas comment la traduire dans l'expression :
J'ai essayé le code que tu m'as envoyé en l'adaptant, et il me renvoi le Message ERREUR 1004, erreur définie par l'application ou par l'objet.....
J'ai de mon coté fait quelques essais et voila ou j'en suis :
en refaisant des tests sur un champ contenant du texte, j'arrive à filtrer par macro en utilisant le code suivant :
Dim Nom As String
Nom = InputBox("saisir le nom (DEVEAUX, BOUVET ou ENGUENT)")
ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("VENDEUR" _
).ClearAllFilters
With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("VENDEUR" _
)
For i = 1 To .PivotItems.Count
If .PivotItems(i).Value = Nom Then
.PivotItems(i).Visible = True
Else
.PivotItems(i).Visible = False
End If
Next i
End With
.......
Cette même structure de code, en l'appliquant sur une date me renvois une erreur : impossible de définir la propriété visible de la classe pivotitem