Tri et liste déroulante sans doublon

  • Initiateur de la discussion Initiateur de la discussion KIM
  • 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 !

K

KIM

Guest
Bonjour le forum,
A chaque reception de ce fichier les donnees dans les colonnes peuvent etre differentes.
Par exemple il peut y avoir de nouveaux noms, de nouveaux projets et de nouvelles activités.

Comment établir dans une autre feuille une liste des NOMS triés et sans doublons avec le nombre d'occurence de chaque NOM sur une colonne à côté et la même chose pour les colonnes des GRADE, ACTIVITE 1, ACTIVITE 2 et PROJET. Cela me permet de creer des listes déroulantes et dynamiques et à jour.

Merci d'avance.
 

Pièces jointes

Salut Kim,

Tu peux utiliser un filtre pour extraire les Noms sans doublons.
Dans la feuille 1, tu nommes la colonne B SourceNoms avec le menu Insertion/Nom/Définir.
Puis, dans la feuille 2, tu prépares l'extraction comme ceci :

Zone de critère A4:A5
NOM
*

Plage de destination : A9
Appeler le menu Données/Filtrer/Filtre élaboré
Dans la boite de dialogue, tu coches "Copier vers un autre emplacement" et "Extraction sans doublon"
Plages : =SourceNoms
Zone de critères : A4:A5
Copier dans : A9
et OK

A partir de A9, Excel te donne ceci :
NOM
Nom2
Nom12
Nom4
Nom1
Nom5
Nom3
Nom9
Nom6
Nom21
Nom32

A+
Horatio
 
Re: Tri et liste d�roulante sans doublon

Bonjour Lord Nelson,
Merci pour ta reponse rapide,
je me permets de te demander:
1- Quelle est le sens de cette Zone de critères: A4:A5
NOM
*

2- J'ai bien la liste sans doublons, mais elle n'est pas triée

3-Est-ce possible d'automatiser cette création de liste
par un bouton avec une macro VBA
Merci d'avance
 
Bonjour,

Par formules.
Extraction des noms par ordre alpha, sans doublons, avec une colonne supplémentaire.
Extraction des grades, activités, etc sans doublons, mais pas dans l'ordre alpha et sans colonne supplémentaire.
Formules matricielles, à valider par ctrl, maj et entrée.
 

Pièces jointes

Bonjour Monique,
merci pour ton fichier,
Maintenant je peux creer mes listes deroulantes,
1- Mon fichier à importer fait au min 6000 lignes,
Je ne connais par à l'avance le nombre de Noms différents, de même pour les Grades, etc...
Comment je peux dimmensionner les listes de la feuille2 dynamiquement?

2- les listes autres que Noms ne sont pas triées. Y-a-t-il une raison?
sinon comment faire?

3-Je souhaite afficher sur une nouvelle feuille, à chaque selection , dans une ou plusieurs de ces listes,
les lignes correspondantes de la feuille1.

J'espère ne pas t'embéter ce jour de Dimanche.
Merci
Kim
 
Bonjour Monique, Kim et tous,

Kim, tu trouveras joint un exemple de filtre élaboré commandé par un bouton de commande qui appelle la macro "FiltreNoms".

La zone de critères sert à indiquer à Excel ce que tu veux récupérer, par exemple :

* tous les noms
Nom?2 les noms qui se terminent par 2
Nom0? les noms qui ont 0 en 4e position...etc

Dans notre exemple, ce critère est placé en A5.

A+
Horatio
 

Pièces jointes

Re,

La solution de Lord Nelson sera moins lourde, je crois.

Question 1
6000 lignes et des formules matricielles, ça va ramer.
Le mieux serait de donner un nom aux formules,
ça accélère le temps de recalcul.

Pour redimensionner les plages de la feuille 2 selon le nb de valeurs qu'elles contiennent,
c'est déjà à moitié fait.
Dans le fichier joint, les plages sont nommées jusqu'à la ligne 12,
il faut copier-coller la formule jusqu'à la ligne ???
et nommer la plage jusqu'à la ligne ???
Sinon, c'est faisable par macro mais je n'y connais rien.
Les listes de validation ne contiendront pas les plages vides du bas =DECALER(plage;0 ligne;0 colonne; Hauteur = nb de cellules <>""))
Je peux essayer, pour voir si ça tient la route en temps de recalcul.

Question 2
Je voulais juste te laisser le choix,
ou bien on insère des colonnes en feuille 1 et la formule n'est pas trop compliquée en feuille 2,
ou bien on fait une formule pas drôle, on n'insère pas de colonnes et on n'a pas l'ordre alpha.

Question 3
Pas compris, mais je sens qu'il y a de la macro dans l'air et je n'y connais rien.
 
Re-Bonjour Lord Nelson et le forum,
Je peux creer maintenant ma liste deroulante pour NOM, et ce sera la même chose pour les autres colonnes.

- Sur la feuille 3, je crée une zone de critères:
en A1: NOM
et en A2 ma liste deroulante et je selectionne un Nom (par ex Nom02)
Je souhaite récupérer les lignes correspondantes à ce nom,

- Je Recopie, par exemple
en A5 le titre de la première colonne de la feuille source: UNITE,
en B5 le titre de la seconde : NATURE_AGENT, Etc.. idem pour toutes les colonnes dont je veux extraire les données.

- J'Appelle le menu Données/Filtrer/Filtre élaboré
Je désigne la plage de destination, par exemple A5:G5,
et j'extrais les lignes correspondantes.

Mon Problème c'est en sélectionnant un autre Nom dans la case A2,
je n'obtiens rien. Il faut que je refasse toute la procédure menu Données/Filtrer/Filtre élaboré
Y-a-t-il moyen de récupérer automatiquement à chaque modification de la case A2,
les données correspondantes dans la plage de Destination?
Merci d'avance
Kim
 
Re-Bonjour Monique et le Forum,

Question 2
on peut insérer des colonnes en feuille 1 à partir de la colonne AA par exemple,

Question 3
Le but de ces listes triées c'est de créer des listes déroulantes.
Ensuite à la sélection d'un élement de cette liste j'affiche sur une nouvelle feuille les lignes qui correspondent à l'élément sélectionné.
Si je sélectionne le Nom2, j'affiche toutes lignes qui contiennent dans la colonne Nom le Nom2.
Merci
et A+
 
Re,

Les listes sont par ordre alpha,
les formules matricielles sont nommées,
mais...
j'ai fait un essai avec 5000 lignes (seulement),
Excel a refusé de dépasser les 32% de recalcul
et le fichier a dépassé les 900 Ko
Je pense qu'il faut abandonner cette solution.
 

Pièces jointes

Re Kim,

Pour la feuille 3, j'ai ajouté une liste déroulante alimentée par la Feuille 2 (Liste des noms sans doublons).

Tu trouveras aussi un nouveau bouton de commande "Filtrer" pour obtenir les lignes correspondant au nom sélectionné dans la liste.

Idéalement, il aurait été intéressant de se passer du bouton "Filtrer" pour obtenir les données à chaque changement dans la liste déroulante mais cela entraîne une cascade d'évènement lors de la mise à jour de la liste...

A+
Horatio
 

Pièces jointes

Bonjour Lord Nelson,

1-Selon vous, comment je peux m'en passer du bouton "Filtrer" pour obtenir les données à chaque chargement du nouveau fichier, Sachant que le fichier peut avoir plus de 6000 lignes.

2-Si je fais une liste déroulante par ACTIVITE1, ou ACTIVITE2, ou PROJET,
je vais avoir plusieurs Noms.
Par des formules en fin de sélection je peux trouver le nombre de Noms différents pour l'ACTIVITE sélectionnée, la somme de la colonne QUOTITE, et le nombre de PROJETS différents.
Mais d'une manière dynamique et automatique y-a-t-il moyen d'avoir ces éléments: Nombre de Noms différents, Somme des QUOTITE, nombre de PROJET après chaque sélection.

Merci d'avance pour votre aide.
Cordialemnt
 
Salut Kim,

Tu trouveras une amélioration du filtre précédent avec la sélection directe du nom à filtrer par la liste déroulante.

Pour le second volet de ta question, il me semble que des formules SOMME.SI et NB.SI devraient convenir.

A+
Horatio
 

Pièces jointes

Bonjour Lord Nelson, et le forum,
Merci pour cette derniere version de ce fichier.
Je vais essayer d'avancer dans mes extractions en utilsant toutes les listes deroulantes necessaires et les extractions souhaitées.
Merci de ton aide, aussi celle de Monique
Et à Bientot pour un autre sujet
Cordialement
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
8
Affichages
731
Retour