XL 2016 Filtrer un TCD avec VBA

  • Initiateur de la discussion Initiateur de la discussion JLR67
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JLR67

XLDnaute Nouveau
Bonjour,
J'ai une formule VBA qui me permet de filtrer le critère "Mois" d'un TCD d'après une cellule"H2". Je souhaite y rajouter la possibilité de filtrer un autre critère "Année" d'après la cellule "H3".
Mes connaissances VBA sont limitées.
Merci pour votre aide

Private Sub Worksheet_Change(ByVal Target As Range)
Dim xPTable As PivotTable
Dim xPFile As PivotField
Dim xStr As String
On Error Resume Next
If Intersect(Target, Range("H2")) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set xPTable = Worksheets("Comptable").PivotTables("Tableau croisé dynamique1")
Set xPFile = xPTable.PivotFields("Mois")
xStr = Target.Text
xPFile.ClearAllFilters
xPFile.CurrentPage = xStr
Application.ScreenUpdating = True
End Sub
 
Bonjour Chris,
Les cellules sont renseignées par un Userform et c'est pour cela que je n'utilise pas les segments. Il y a peut être une solution qui permet de passer directement de la comboBox au filtre du TDC, mais là, mes compétences sont trop trop limitées.
Je joins un modèle qui reprend une partie de mon fichier
Merci à toi de t'intéresser à mon problème
 

Pièces jointes

RE

Le problème est qu'il faudrait adapter les listes déroulantes aux périodes existantes ou bien contrôler qu'il y a des valeurs pour la période choisie sinon le code plantera.

En plus avec une source à double entrée le TCD n'est pas optimisé

Une chronologie sur le TCD et un bouton pour l'impression suffiraient.

Mais ton exemple n'ayant pas l'onglet que tu imprimes, on n'a qu'une vue limitée du problème
 
Re
En fait, l'impression demandée est le TCD. Mais je ne vois pas en quoi cela pourrai influencer ma macro de filtre dans mon TCD. Mais je n'y comprends pas assez pour dire que cela n'a pas d'incidence. Mais pourriez vous ne pas m'indiquer le code qu'il faudrait, en réponse à ma question. En sachant que le code actuel ne plante pas quand l'indication de la cellule ne correspond pas à un mois qui n'est pas dans l'Item.
Merci
 
RE
Je propose cela
1672351185679.png

On choisit la période et si nécessaire on lance l'impression mais, comme déjà dit ton code d'impression ne correspondant pas à l'exemple fourni, l'extraire de cet exemple ne permet pas de le tester...
 

Pièces jointes

  • 1672350866984.png
    1672350866984.png
    20.2 KB · Affichages: 19
Re,
Effectivement, je peux prendre ton exemple pour éviter de faire un code pour le tri à partir de l'userform. Mais l'idée de départ était d'éviter que les utilisateurs soient obligés d'aller dans les onglets pour définir l'impression. Mais faute de mieux, je prends ton exemple en plaçant le segment et le bouton d'impression sur la page d'accueil.
Encore merci et mes meilleurs voeux pour la nouvelle année.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
415
Retour