Microsoft 365 Filtrer TCD en fonction de plusieurs critéres

lapchsa

XLDnaute Nouveau
Bonjour,

Je souhaite réaliser des filtres sur un TCD, après avoir consulté plusieurs sujets, j'ai trouvé ce code que je ne parviens pas à faire fonctionner, pourriez vous m'expliquer mes erreurs :


VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B14")) Is Nothing Then Exit Sub
    With Sheets("W")
        .[B14] = Target.Value
    End With
End Sub

Je souhaite filtrer pour l'exemple le département (E6) et le nombre de palettes (C6) directement sans passer par les segments (dans le but d'obtenir un prix pour un autre fichier)
Et réaliser une liste des possibilités d’emballage "choix dimPalettes"(B20) en fonction de sa Largeur (C3) et de sa hauteur (B3).

Bien à vous,
 

Pièces jointes

  • test.xlsm
    49.7 KB · Affichages: 10
Solution
RE

J'ai nommé les tableau structurés A, B, D, E avec un préfixe T_

La requête Tout récupère tout le classeur, Tableaux structurés et plage nommées : on filtre pour ne garder que les T_ ce qui permet de récupérer d'un coup toutes les données de ces 4 tableaux

Les autres tableaux structurés : Choix, Ballots, Hayon sont chargés indépendamment et pour Hayon et Ballots, décroisés

On croise Tout et Choix (fusion de requêtes) pour filtrer le département
On supprime le libellé Région et on décroise les colonnes de nombres de palettes
On croise à nouveau avec Choix pour filtrer le nombre de palettes
On ne garde que les colonnes indiquant le nom du tableau initial dont on enlève le préfixe T_ et la valeur

Par ailleurs...

chris

XLDnaute Barbatruc
Bonjour

Avec 365 il serait temps d'oublier l'assistant TCD de 2002 et te servir des outils existant depuis 2016 (même 2010 en add on) pour consolider tes sources qui devraient être sous forme de tableaux structurés (cela fait plus de 17 ans qu'on les utilise), à savoir PowerQuery.

Tu pourrais d'ailleurs avoir directement le résultats que tu as dans le TCD et dans les cellules accolées à partir de tes choix...

Tu ne peux pas changer la celle B14 de la feuille W : elle appartient au TCD.
Le filtre est en B13 mais de même qu'on ne filtre pas manuellement en saisissant un valeur dans la cellule, on ne change pas la valeur en VBA

Voir ci-joint le résultat avec PowerQuery

Pour hauteur largeur donne un exemple de saisie et résultat
 

Pièces jointes

  • Palettes_hayons.xlsm
    70.2 KB · Affichages: 13
Dernière édition:

lapchsa

XLDnaute Nouveau
Merci pour ton retour, effectivement je regarde le résultat c'est bien plus propre et plus stable, j'analyse la requête sans toutefois parvenir à comprendre comment réaliser les filtres, je vais chercher un cours vidéo en ligne pour les bases PowerQuery.

Bonne soirée
 

chris

XLDnaute Barbatruc
RE

J'ai nommé les tableau structurés A, B, D, E avec un préfixe T_

La requête Tout récupère tout le classeur, Tableaux structurés et plage nommées : on filtre pour ne garder que les T_ ce qui permet de récupérer d'un coup toutes les données de ces 4 tableaux

Les autres tableaux structurés : Choix, Ballots, Hayon sont chargés indépendamment et pour Hayon et Ballots, décroisés

On croise Tout et Choix (fusion de requêtes) pour filtrer le département
On supprime le libellé Région et on décroise les colonnes de nombres de palettes
On croise à nouveau avec Choix pour filtrer le nombre de palettes
On ne garde que les colonnes indiquant le nom du tableau initial dont on enlève le préfixe T_ et la valeur

Par ailleurs dans la requête Autres on croise Choix avec Hayons sur Adresse pour récupérer A, B, D, E et la valeur Hayon et on croise avec Ballots sur A,B,D,E et Ballots pour récupérer la valeur Ballot

On croise Tout et Autres sur A,B,D,E pour récupérer valeur Hayon et valeur Ballots et on fait le total des 3 valeurs

C'est presque plus long à décrire qu'à faire...
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 165
Messages
2 085 879
Membres
103 009
dernier inscrit
dede972