Variables dates modifiant plusieurs TCD

tarinz

XLDnaute Nouveau
Bonjour à toutes et tous,

Je cherche à appliquer deux variables de dates (date de début et date de fin) sur le résultats de 2 tableaux croisés dynamiques en même temps sans passer par les filtres de rapports (je sais, c'est pas facile à comprendre).
Pour ce qui vont me répondre pourquoi tu veux faire cela alors qu'il existe justement les filtres de rapport, je leur répondrai parce que j'ai 20 TCD à modifier avec ces 2 dates en même temps ... et aussi parce que ça me fait plaisir de vous faire bosser un peu, bande de faignasses ;)
Pour les curieux je mets mon fichier exemple ici Regarde la pièce jointe GraphsZezette.xlsx

Merci d'avance
@+
Laurent
 

mth

XLDnaute Barbatruc
Re : Variables dates modifiant plusieurs TCD

Bonsoir,

On doit pouvoir améliorer mais essaie avec ce code:

Code:
Sub MAJ()
Application.ScreenUpdating = False
Dim Deb As Date, Fin As Date
With Sheets("GRAPHS")
    Deb = .Range("E2")
    Fin = .Range("H2")
End With
With Sheets("DonnéesGraphs")
On Error Resume Next
    For i = 1 To .PivotTables.Count
        For j = 1 To .PivotTables(i).PivotFields("Début de période").PivotItems.Count
        x = .PivotTables(i).PivotFields("Début de période").PivotItems(j).Value
          If .PivotTables(i).PivotFields("Début de période").PivotItems(j).Value < Deb Or .PivotTables(i).PivotFields("Début de période").PivotItems(j).Value > Fin Then
                .PivotTables(i).PivotFields("Début de période").PivotItems(j).Visible = False
             Else
                .PivotTables(i).PivotFields("Début de période").PivotItems(j).Visible = True
            End If
        Next j
        For Z = 1 To .PivotTables(i).PivotFields("Fin de période").PivotItems.Count
        x = .PivotTables(i).PivotFields("Fin de période").PivotItems(Z).Value
          If .PivotTables(i).PivotFields("Fin de période").PivotItems(Z).Value > Fin Or .PivotTables(i).PivotFields("Fin de période").PivotItems(Z).Value < Deb Then
                .PivotTables(i).PivotFields("Fin de période").PivotItems(Z).Visible = False
             Else
                .PivotTables(i).PivotFields("Fin de période").PivotItems(Z).Visible = True
            End If
        Next Z
 
    Next i
On Error GoTo 0
End With
Application.ScreenUpdating = True
End Sub

Bonne soirée,

mth
 

mth

XLDnaute Barbatruc
Re : Variables dates modifiant plusieurs TCD

Bonjour,

Au lieu de dire "ça ne fonctionne pas", tu devrais dire "je n'ai pas réussi à adapter" ou alors "le fichier joint dans le premier post n'a rien à voir avec mon fichier de travail".

Où sont passées par exemple les étiquettes de tes premiers TCD sur lesquelles s'appuyait la macro? disparues, donc forcément ça fonctionne moins bien !

Bonne continuation,

mth
 
Dernière édition:

tarinz

XLDnaute Nouveau
Re : Variables dates modifiant plusieurs TCD

houlà t un nerveux toi :D
en effet j'avais modifié entre-temps le fichier car je cherchais de mon côté ...

Ça marche nickel, you are a best mth

N'oublie pas, la vie est trop courte pour s'énerver comme ça (mdr !)

Un grand merci
@+ Laurent
 
Dernière édition:

mth

XLDnaute Barbatruc
Re : Variables dates modifiant plusieurs TCD

re :)

Gros éclat de rire :) :)

Non en fait on ne m'a jamais dit que j'étais un nerveux, et franchement je ne suis pas the best de très (trop ) loin, et ne le serai jamais :)

Ce qui compte surtout c'est que tu aies réussi à te dépatouiller avec ton fichier, c'est là l'essentiel :)

Bon après-midi à toi et @ +

mth
 

Statistiques des forums

Discussions
312 502
Messages
2 089 023
Membres
104 007
dernier inscrit
Monvieux