Microsoft 365 VBA - Filtre avancé avec TCD

Vee

XLDnaute Nouveau
Bonjour le forum !

Je vous présente mon fichier :
Dans l'onglet "Commandes" il y a les données que j'extrais
Dans l'onglet "Liste clients" il y a les codes clients et le nom du client en rapport avec ce code
Dans l'onglet récap, j'y ai mis les codes clients avec le nom associé sous forme de TCD, ainsi que les en-têtes de l'onglet "Commandes" que je souhaite rapporter

L'onglet "Commandes" est un fichier que j'extrais et qui ne sera pas dans ce fichier, mais rangé dans un dossier à part avec comme nom la semaine d'extraction (et avec beaucoup plus de colonnes)
Mon but est, dans l'onglet "Récap", de filtrer sur le nom du client (utilisation d'un TCD pour éviter de filtrer les lignes de la feuille) et qu'avec un filtre avancé je puisse récupérer les données de l'onglet "Commandes" (donc du fichier d'extraction) correspondants aux en-têtes et au client en question, et qu'à chaque fois que je modifie le nom du client, les données se mettent à jour en fonction.

J'avais pensé avec un code pour le filtre avancé et le petit bouton pour faire la màj une fois le client choisi, mais j'avoue bloquer sur la zone de critère du filtre avancé vu que c'est un TCD et que la taille des données change.
Peut-être qu'il y a une meilleure méthode pour résoudre mon soucis que je prendrais volontiers, mais je reste bloqué sur mon idée et je n'avance plus.

Un grand merci pour votre aide !
 

Pièces jointes

  • Fichier test.xlsm
    32.4 KB · Affichages: 11

Vee

XLDnaute Nouveau
Bonjour,
Une proposition avec Power query, si j'ai bien tout compris.
Cordialement
Bonjour,
Merci pour votre aide !
Est-ce que cela pourrait fonctionner sans que l'onglet "Commandes" ne soit dans le fichier ? Car ces données font une bonne dizaine de milliers de lignes et une centaine de colonnes de base et j'aimerai éviter d'alourdir le fichier d'analyse si c'est possible, et donc laisser ce fichier dans un dossier à part.
En fait l'idée serait de filtrer sur le code client et le nom client et que sur la centaine de colonnes existantes du fichier "Commandes" je ramène les 5 colonnes qui m'intéressent (d'où l'idée du filtre avancée, mais je ne vois pas comment mettre la zone de critère en dynamique selon les données du TCD) avec les données correspondantes au code client et au nom client
 

chris

XLDnaute Barbatruc
Bonjour
Est-ce que cela pourrait fonctionner sans que l'onglet "Commandes" ne soit dans le fichier ?
Oui sans problème
Il suffit d'inscrire le chemin+nom du fichier dans un petit tableau (voir onglet Liste clients)

NB : j'utilise des tableaux plutôt que des cellules nommées pour éviter d'expliquer comment modifier les paramètres de confidentialité de PowerQuery
 

Pièces jointes

  • Extrait_Commandes.xlsm
    29.8 KB · Affichages: 6

Vee

XLDnaute Nouveau
Bonjour

Oui sans problème
Il suffit d'inscrire le chemin+nom du fichier dans un petit tableau (voir onglet Liste clients)

NB : j'utilise des tableaux plutôt que des cellules nommées pour éviter d'expliquer comment modifier les paramètres de confidentialité de PowerQuery
Bonjour, merci pour ce retour. Et est-ce également possible de choisir les colonnes voulues ? Comme mon fichier commandes a une centaine de colonnes, je ne voudrais garder que celles qui m'intéresse.
Merci
 

Cousinhub

XLDnaute Barbatruc
Inactif
Bonjour,
En reprenant le fichier de chris (Merci)
Dans l'onglet de recap', j'ai rajouté un Tableau, avec en colonne A, les Titres de colonnes, et en colonne B, les choix.
Tu peux mettre autant de titres que tu veux (il faut quand même qu'ils soient inclus dans tes vrais tableaux...)
Si tu veux rapatrier telle ou telle colonne, tu mets une croix dans la cellule adjacente
Dès que tu modifies ton choix, ou que tu modifies le code client, la requête se met à jour
 

Pièces jointes

  • Extrait_Commandes_v2.xlsm
    33.1 KB · Affichages: 5

Vee

XLDnaute Nouveau
Bonjour,
En reprenant le fichier de chris (Merci)
Dans l'onglet de recap', j'ai rajouté un Tableau, avec en colonne A, les Titres de colonnes, et en colonne B, les choix.
Tu peux mettre autant de titres que tu veux (il faut quand même qu'ils soient inclus dans tes vrais tableaux...)
Si tu veux rapatrier telle ou telle colonne, tu mets une croix dans la cellule adjacente
Dès que tu modifies ton choix, ou que tu modifies le code client, la requête se met à jour
Bonjour,
Merci beaucoup pour l'aide. Je vais me renseigner de mon côté sur comment mettre ça en place en fonction du tableau dont je dispose (je n'ai jamais utilisé power query et ça fait un petit moment que je me tâte à m'y former) et voir comment je peux utiliser votre solution.
 

Discussions similaires

Statistiques des forums

Discussions
315 107
Messages
2 116 274
Membres
112 710
dernier inscrit
FJL