Recopier le filtre d'un TCD sur d'autres TCD

Babou90

XLDnaute Nouveau
Bonjour,

J'ai un petit souci avec mes TCD, j'aimerai appliquer un filtre sur un 1er TCD et faire en sorte qu'il ce répercute sur tout les autres.

J'ai commencer une macro :

Code:
Sub Filtre_TCD()
Dim OTP As String
    OTP = Range("C4").Value
        
    ActiveSheet.PivotTables("BSBH1").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH1").PivotFields("OTP Project").CurrentPage = _
        "(blank)"
    ActiveSheet.PivotTables("BSBH1").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH1").PivotFields("OTP Project").CurrentPage = _
        "OTP"

        
    ActiveSheet.PivotTables("BSBH2").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH2").PivotFields("OTP Project").CurrentPage = _
        "(blank)"
    ActiveSheet.PivotTables("BSBH2").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH2").PivotFields("OTP Project").CurrentPage = _
        "OTP"
        
    ActiveSheet.PivotTables("BSBH3").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH3").PivotFields("OTP Project").CurrentPage = _
        "(blank)"
    ActiveSheet.PivotTables("BSBH3").PivotFields("OTP Project").ClearAllFilters
    ActiveSheet.PivotTables("BSBH3").PivotFields("OTP Project").CurrentPage = _
        "OTP"



End Sub

Le souci c'est que je n'arrive pas à appliquer la variable au filtre.

Quelqu'un pourrai t'il m'aider ?

Je joint un fichier d'exemple avec la macro à "rectifier"
 

Pièces jointes

  • Classeur1.xlsm
    21.6 KB · Affichages: 32
  • Classeur1.xlsm
    21.6 KB · Affichages: 29
  • Classeur1.xlsm
    21.6 KB · Affichages: 35

Babou90

XLDnaute Nouveau
Re : Recopier le filtre d'un TCD sur d'autres TCD

J'ai avancé un peut, ça fonctionne maintenant mis à part quand le 1er filtre est sur (vide)

Code:
Sub Filtre_TCD()
Dim Selection As String
    Selection = Range("C4").Value
        

    ActiveSheet.PivotTables("BSBH1").PivotFields("OTP Project").CurrentPage = _
        Selection
        
    ActiveSheet.PivotTables("BSBH2").PivotFields("OTP Project").CurrentPage = _
        Selection
        
    ActiveSheet.PivotTables("BSBH3").PivotFields("OTP Project").CurrentPage = _
        Selection



End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 947
Messages
2 093 842
Membres
105 851
dernier inscrit
aviato