Automatisation affichage d'un tableau à partir d'une liste déroulante

Bonjour à tous,

Je me permets de solliciter votre expertise car je rencontre des difficultés avec mon fichier Excel et je commence à tourner en rond...

Pour des raisons de confidentialité, j’ai préparé une version simplifiée du fichier, contenant des données fictives

L'objectif du fichier est de pouvoir analyser les ventes d'un magasin selon plusieurs critères (rayon, type de marque etc).

Ce fichier comporte deux onglets :

  • Un onglet "DATA" contenant toutes les données (rayon, type de marque, marque, code-barre, ventes, chiffre d'affaires etc) (repère n°1 sur les screens)
  • Un onglet "Analyse par rayon - marque nationale" : il contient une liste déroulante contenant tous les rayons existants (repère n°2), ainsi qu’un tableau vide (repère n°3) que je souhaite alimenter automatiquement à partir des données de l’onglet "DATA"
capture 2 imageonline co merged

Mon objectif serait d'automatiser le tableau n°3 à l'aide d'une formule : lorsqu’un rayon est sélectionné via la liste déroulante, le tableau devrait se remplir automatiquement avec les lignes correspondant à ce rayon ET au type de marque "NATIONALE", en se basant sur les données de l’onglet "DATA".

Par exemple, si je sélectionne le rayon CHIPS, le tableau devrait afficher toutes les lignes de l’onglet "DATA" où :

  • RAYON = CHIPS
  • TYPE DE MARQUE = NATIONALE
    Ce qui devrait donner un total de 9 lignes.

Savez-vous comment je peux procéder ?

Merci !

Bonsoir,

votre fichier a été tellement simplifié qu'on ne le voit même plus !

@ bientôt

LouReeD

Bonjour à tous,

1 : mettre le fichier simplifie en ligne pour qu'il soit accessible (on ne repare pas un moteur avec une image de clé a molette)

2 : mettre a jour Ta version d 'excel dans ton profil (2016, 2019, 2024, 355 ) . De ta version dépendent les solutions qui te seront proposées. Si tu tiens au coté français de ta version, tu mets 2021 FR (c'est un exemple ) !

Crdlmt

Bonsoir,

Merci, j'ai mis à jour mon profil, j'utilise la version 2507 en Français

Je viens de me rendre compte que le fichier ne s’était pas importé dans mon message initial car il était trop lourd à cause des onglets masqués. Normalement, cela devrait fonctionner cette fois-ci.

Merci à vous !

15analyse-rayon.xlsx (14.00 Ko)

bonsoir,

une proposition avec Power Query si dispo dans ta version.

2507 n'est pas la version d'excel mais le n° de mise à jour, la version doit être 2007, 2010, 2013, 2016, 2019, 2021, 2024 ou 365

Cordialement

14analyse-rayon.xlsm (32.00 Ko)

Bonjour,

Merci pour votre proposition.

Après recherche dans le panneau de configuration, il semble que j'ai la version 365.c

Est-ce que PowerQuery repose sur une macro ? J'utilise un PC professionnel, et il semble que les macros soient bloquées, car lorsque je sélectionne un rayon dans la liste déroulante, les données du tableau ne se mettent pas à jour... Dans ce contexte, il me semblerait plus simple de privilégier des formules Excel, si cela reste possible.

Par ailleurs, mon objectif est d’afficher par rayon, uniquement les lignes correspondant au TYPE DE MARQUE "NATIONALE". Par exemple, dans votre exemple, seules les cinq premières lignes devraient s'afficher en choisissant le rayon "FECULENTS".

mn

Un grand merci pour votre aide

Bonjour à tous,

Une essai :

=SIERREUR(FILTRE(DATA!A2:H26;(DATA!B2:B26=B1)*(DATA!C2:C26="NATIONALE"));"")

Bonjour,

Power query est un outil interne à excel, la macro n'est là que pour actualiser la requête suite au changement de rayon.

La solution de JB_ (que je salue) est plus adaptée à ton besoin.

Bonne journée

Bonjour à tous !

Une double approche :

  1. Segments : Simple à mettre en œuvre mais nécessite de traiter les lignes masquées pour les éléments calculés tirés du filtrage.
  2. Liste de validation : Plus technique mais les données filtrées étant isolées sont directement exploitables.

Bonsoir,

Merci à tous pour votre aide !

@JB_ Merci pour cette formule, j'ai réussi à la répliquer sur mon fichier et elle affiche exactement ce que je souhaitais !
Penses-tu qu’il serait possible d’ajouter un critère supplémentaire à la formule pour n’afficher que les 50 meilleurs produits (selon le nombre d'unités vendus), ou est-ce que cela risque de rendre la formule trop complexe ?

@JFL, 2 propositions également très intéressantes, un peu plus techniques en effet (je ne connaissais pas pour être honnête). Mon niveau sur Excel étant plutôt "scolaire", j’ai un peu peur de ne pas réussir à les reproduire sur mon fichier, qui contient + de 13 000 lignes

Bonjour à tous !

...... Mon niveau sur Excel étant plutôt "scolaire", j’ai un peu peur de ne pas réussir à les reproduire sur mon fichier, qui contient + de 13 000 lignes

Que voilà une excellente raison de parfaire ses connaissances !

Le forum est précisément là pour vous accompagner.

Bonjour à tous,

Dans la continuité de ma 1ère proposition, on rajoute une fonction pour trier par les unités vendues.

=TRIER(FILTRE(DATA!A2:H26;(DATA!B2:B26=B1)*(DATA!C2:C26="NATIONALE"));7;-1)

Tout dépend de ce que tu entends par "les 50 meilleurs" ; Car tu peux avoir des ex-aequo au niveau des Qtés vendues...

Cela dit, comme la formule trie déjà du meilleur au moins bon, un simple coup d'œil devrait suffire, je pense.

Merci beaucoup, c'est top !!

Bonjour,

Désolé je complexifie encore ma demande, j'aimerai ajouter un deuxième pivot avec les mois. J'ai ajouté dans la version du fichier ci-joint, des onglets Data correspondant aux ventes de produits par mois (Janvier, février, mars...) et une liste déroulante contenant les mois.

Comment je pourrai adapter la formule pour que le tableau affiche automatiquement en plus de ce qu'on avait vu avant (c'est-à-dire les lignes correspondant aux ventes de marque nationale du sous-rayon sélectionné, triées selon les ventes unités), les ventes correspondant au mois sélectionné ?

=TRIER(FILTRE(DATA!A2:H26;(DATA!B2:B26=B1)*(DATA!C2:C26="NATIONALE"));7;-1)
image

Merci par avance pour votre aide

Bonjour,

Avec la fonction INDIRECT.

Cordialement

Edit :

Version Power query

Bonjour Zebulon,

Merci pour votre aide !

J'ai regardé votre fichier avec la fonction INDIRECT et c'est exactement le résultat que je recherche. Mais je n'ai malheureusement pas réussi à répliquer la formule dans mon fichier et je n'arrive pas à identifier d'où vient le problème...

Y a-t-il des contraintes particulières à connaître ? Par exemple, est-ce que la formule peut échouer si les noms des onglets contiennent plusieurs mots séparés par des espaces, comme "DATA Enseigne - Janvier" au lieu de "DATA - Janvier" ?

Merci

re,

il faut que le nom soit identique dans ce cas

indirect("DATA Enseigne - "&la référence de la cellule contenant le mois)

Rebonjour,

J'ai réessayé ce qui me donne la formule ci-dessous mais j'ai le message suivant qui s'affiche : "vous avez utilisé un nombre trop important d'arguments pour cette fonction."

=TRIER(FILTRE(INDIRECT("DATA Enseigne "&C2;(INDIRECT("DATA Enseigne "&C2&"[SOUS RAYON]"=C1)*(INDIRECT("DATA Enseigne "&C2&"[DISTRIBUTEURS/FABRICANTS]")="FABRICANTS"));16;-1)

C1 étant la formule contenant la liste déroulante de sous-rayon et C2 étant celle avec les différents mois...

=TRIER(FILTRE(INDIRECT("DATA Enseigne "&C2);(INDIRECT("DATA Enseigne "&C2&"[SOUS RAYON]")=C1)*(INDIRECT("DATA Enseigne "&C2&"[DISTRIBUTEURS/FABRICANTS]")="FABRICANTS"));16;-1)

verifie la place de tes parentheses

Crdlmt

Merci DjiDji

J'ai l'erreur #REF! qui s'affiche dans la cellule... Pourtant l'emplacement de C1 et C2 sont corrects et j'ai vérifié que le sous rayon et le mois sélectionné contiennent bien de la donnée

Rechercher des sujets similaires à "automatisation affichage tableau partir liste deroulante"