Tri en cascade avec liste deroulante

CHAPELLE35

XLDnaute Nouveau
Bonjour,

jusque maintenant j'utilisais les filtres pour travailler mais le fichier devient trop lourd et doit maintenant être utilisé par plusieurs personnes, on me demande de mettre en place des tris à partir de listes déroulantes successives ce que je ne maitrise pas. (et avec VBA car je ne vois pas d autres possibilités)

Le fonctionnement du fichier serait le suivant si c'est possible :

On sélectionne le nom d'un vendeur, puis on peut faire apparaitre seulement une semaine particulière (du 01 au 09 par exemple) ou voir le mois entier, et passer de l'un à l'autre comme on le souhaite.

Il ya une base de données unique format excel et un onglet pour lire le résultat.
Un modèle ci-joint pour mieux comprendre.

Merci pour votre aide
 

Pièces jointes

  • EXEMPLE LISTE DEROULANTE.xlsx
    14.2 KB · Affichages: 65

CHAPELLE35

XLDnaute Nouveau
Re : Tri en cascade avec liste deroulante

Bonjour phlaurent55,
malheureusement le TCD est d'une lecture et d'un usage trop complexe.
Il me faut un affichage simple, car c'est la demande des utilisateurs.
je garde ton modèle au cas où personne ne m'apporte de solutions par VBA
Merci
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Tri en cascade avec liste deroulante

Re,

voici un début de réponse concernant le choix du vendeur

il serait utile de définir les périodes à choisir sous un format numérique et pas au format texte

à+
Philippe
 

Pièces jointes

  • 111.xlsm
    25.6 KB · Affichages: 49
  • 111.xlsm
    25.6 KB · Affichages: 51
  • 111.xlsm
    25.6 KB · Affichages: 44

CHAPELLE35

XLDnaute Nouveau
Re : Tri en cascade avec liste deroulante

Merci, la sélection vendeur me convient tout à fait je vais l'adapter au fichier grandeur nature.

Par contre pour la date, que signifie format numérique ? ce n'est pas le cas dans le fichier avec le format jj/mm/aaaa ?
 
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Tri en cascade avec liste deroulante

Re,
Par contre pour la date, que signifie format numérique
je parlais du contenu du combobox concernant le choix de la période

voir une solution plus complète en pièce jointe

à+
Philippe

Edit: Bonjour PierreJean
 

Pièces jointes

  • 111.xlsm
    31 KB · Affichages: 44
  • 111.xlsm
    31 KB · Affichages: 43
  • 111.xlsm
    31 KB · Affichages: 45
Dernière édition:

CHAPELLE35

XLDnaute Nouveau
Re : Tri en cascade avec liste deroulante

Bonjour et merci Pierrejean,

je vais adapter le code à mon fichier grandeur nature mais j'ai déjà une question : le fichier réel (dans l'onglet "liste" va jusque la colonne AB), je dois donc adapter la partie suivante de votre code
Cells(ligne, 3) = Sheets("LISTE").Range("B" & n)
Cells(ligne, 4) = Sheets("LISTE").Range("C" & n)
Cells(ligne, 5) = Sheets("LISTE").Range("D" & n)

en rajoutant autant de lignes de code qu'i y a de colonnes ou y a t 'il une écriture plus simple ?

Merci
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Tri en cascade avec liste deroulante

Re,

en l'absence de Pierre jean,


remplacer ces 3 lignes ,
Cells(ligne, 3) = Sheets("LISTE").Range("B" & n)
Cells(ligne, 4) = Sheets("LISTE").Range("C" & n)
Cells(ligne, 5) = Sheets("LISTE").Range("D" & n)


par ceci:
For i = 3 To 28
Cells(ligne, i) = Sheets("LISTE").Cells(n, i - 1)
Next i


à+
Philippe
 

CHAPELLE35

XLDnaute Nouveau
Re : Tri en cascade avec liste deroulante

Bonjour et merci à pierrejean et phlaurent55,
je viens de finir d'adapter le code à mon fichier (ça m'a permis de le comprendre du moins l'essentiel !) et ça fonctionne.
Mais je ne comprends pas à quoi sert ce code, puisque ça fonctionn sans (?) :
Private Sub Worksheet_Activate()
Set d = CreateObject("Scripting.dictionary")
For n = 2 To Sheets("LISTE").Range("B" & Rows.Count).End(xlUp).Row
x = Sheets("LISTE").Range("B" & n)
d(x) = x
Next
ComboBox1.List = d.keys
End Sub

Merci
 

CHAPELLE35

XLDnaute Nouveau
Re : Tri en cascade avec liste deroulante

Bonjour Pierrejean,
merci pour cette réponse.
Autre question : pour la mise en forme du tableau je souhaite colorer en bleu une ligne sur deux.
Pour ça j'utilise la MFC, mais ne serait il pas plus simple de garder la mise en forme d'origine de la base de données qui est déjà mise en forme et dans ce cas quel serait le code ?
Merci
 

Discussions similaires

Statistiques des forums

Discussions
312 496
Messages
2 088 978
Membres
103 996
dernier inscrit
KB4175