Histoire d'améliorer un fichier sur ce forum, et pour en apprendre un peu plus, pourriez vous me donner un petit coup de main ?
Sur une feuille, j'ai un tableau comportant plein de noms, avec des doublons, et des cellules vides. Comment faire pour en extraire la liste des noms, sans répétition, sans espace vide, placée dans une colonne ?
Je sais faire cela lorsque le tableau ne comporte qu'une colonne (il y a de nombreux exemples de formules sur ce forum). Je sais aussi le faire à partir d'un tableau en passant par une ou des colonnes intermédiaires. Mais peut on le faire directement, sans colonne intermédiaire ?
Merci d'avance
@ plus
EDIT : Même pas dans l'ordre alphabétique, mais toujours sans colonne intermédiaire, ça serait déja pas mal
Re : Liste dans l'ordre alphabétique extraite d'un tableau
Bonsoir le fil,
Salut JB et merci, j'ai bien noté :
L'objet Dictionary Permet de générer des listes sans doublons. Cet objet, simple à programmer, est très performant. Ne pas utiliser l'objet Collection qui est très lent.
Re : Liste dans l'ordre alphabétique extraite d'un tableau
Bon soir,
Dans un UserForm.
Pour avoir une ComboBox sans doublon, rien de plus simple que la procédure donnée dans : [REF] Wiki 2 de MichelXld (Ce qui touche aux UserForm)
Pour l’avoir qui plus est, sans vide et triée, j’ai pensé utiliser une ListView (pourquoi refaire ce qui est déjà programmé ?).
Ne pas oublier de cocher Microsoft ListView Control... dans les Contrôles supplémentaires et mettre, dans ses propriétés, Sorted à True !
-------------------------------------------------------------------------------------------------
Pour avoir une ListBox sans doublon, c’est bien plus compliqué que pour le cas précédent !
J’ai donc pensé utiliser une ComboBox avec un code des plus réduits.
Re : Liste dans l'ordre alphabétique extraite d'un tableau
Bon jour,
Pas de retour (fil perdu lors de la tempête, message mal exprimé …) ?
Depuis, il y a eu encore des demandes sur ce thème !
Donc rappels :
- Un débutant ne devrait avoir trop de problème de compréhension avec mes propositions (moins de lignes, contrôles usuels avec des techniques, des routines de base et classiques…) sans parler de la rapidité d’exécution.
- Le tri de BOISGONTIER fait passer Zoo avant Zoé et Lii avant lii. Cet ordre utilise les codes ASCII.
Avec mon code*, Zoé devance Zoo et lii devance Lii.
Si le second exemple m’importe peu, par contre le premier me dérange fortement !
*ce n’est pas moi qui trie mais Excel (je le faisais aussi ainsi, tout comme mon dico) !
Si mes solutions présentent des défauts, veuillez m’en faire part. Merci.
Je comprend ton désarroi (J'ai même failli supprimer mon Jeu trouver le mot).
Mais bon, il faut prendre Xld pour ce qu'il est. Ce n'est pas parce que tu n'as pas eu de réponse que c'est nul .
J'apprécie toujours tes solutions VBA et beaucoup n'osent pas le dire.
Juste que les gens ont peut être autre chose à faire .
Je rebondis sur ce post pour faire une nouvelle demande. J'ai le même problème à savoir des données sur une plage qui va de G2 à à DA10000 et je voudrais les remettre dans une seule colonne. J'ai donc essayé d'adapter ton code mais sans succès (agrandir la plage de données). Pourriez-vous m'aider?
Si la plage zone utilise une ou des colonnes à droite de la colonne CU, il faut remplacer les 100 dans la formule par un nombre plus grand, 1000 par exemple.
Si la plage zone utilise une ou des colonnes à droite de la colonne CU, il faut remplacer les 100 dans la formule par un nombre plus grand, 1000 par exemple.