Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Jeanbulle

XLDnaute Occasionnel
Bonjour...

Encore une fois, j'ai besoin de votre aide.
J'ai passé ce soir, deux heures et demi à rechercher comment je pouvais faire.

J'ai une listbox1, qui index toutes les données ( déjà classées par ordre alphabétique ) de la feuille 1, colonne A
Code:
 L = Sheets("Feuil1").Range("A65536").End(xlUp).Row
Plage = Sheets("Feuil1").Range("A1:A" & L).Address
ListBox1.RowSource = "Feuil1!" & Plage

Mon listbox1 est donc placé dans un userform.
Ce que j'aimerais, c'est introduire au dessus du listbox1, une zone de texte, dans laquelle on rentre les lettres du client que l'on recherche
Par exemple : ALFRED

Dès que l'on rentre le A... j'aimerais que le curseur de la listbox se déplace sur la lettre A, puis lettre on rajoute L... se place sur AL etc etc

Es ce faisable avec excel ?

Merci pour votre aide par avance
un petit bout de code peut me suffir à faire la suite.

Grand merci encore ...

Erwan
 

Spitnolan08

XLDnaute Barbatruc
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonsoir JeanBulle,

C'est très surement faisable mais est ce que la solution suivante pourrait te convenir ?

Remplacer la listbox par une combobox: cf fichier joint. Lorsque tu tapes une lettre du nom le premier qui correspond s'affiche et ainsi de suite à chaque nouvelle lettre...

A ciao
 

Pièces jointes

  • ClasseurAlpha.xls
    25 KB · Affichages: 425

Jeanbulle

XLDnaute Occasionnel
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonsoir,

Merci de ta réponse.
Malheureusement... non ! Sans vouloir faire le difficile.
Il s'agit d'un fichier que je dois passer à une amie, et elle a été stricte sur ce point.
Elle désire une liste de nom visible à l'oeil nu, avec une case au dessus....
La combox ne permet pas ca visiblement.

A moins qu'une propriété de la combobox permettre d'étendre son contenu ?
Sans cliquer sur la fleche ?

Bonne année au fait :)
 

Jeanbulle

XLDnaute Occasionnel
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Re


Excusez moi, mais en fait, dans les propriétés de la listbox, dans la partie matchentry, si on sélectionne : " fmmatchentrycomplete" ... ca fait quasiment ce que je recherche.
Si je tape les lettres ALB ... ca se positionne sur ALB
Par contre, je n'ai AUCUN visuel des lettres que je tape sur mon clavier

voir fichier joint

Merci de votre aide
 

Pièces jointes

  • ClasseurAlpha.zip
    13.6 KB · Affichages: 166

Spitnolan08

XLDnaute Barbatruc
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Re

Ci joint un code pour faire ce que tu veux avec visuel des lettres. Par contre je n'ai pas le temps de te rajouter la fonction qui permet de s'affranchir de la casse :
Dans l'exemple joint il faut taper une majuscule lorsque nécessaire... Mais ca te permettra d'avancer.

Bonne nuit
A ciao
 

Pièces jointes

  • ClasseurAlpha2.xls
    38.5 KB · Affichages: 285
  • ClasseurAlpha2.xls
    38.5 KB · Affichages: 284
  • ClasseurAlpha2.xls
    38.5 KB · Affichages: 291

Jeanbulle

XLDnaute Occasionnel
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Salut ^^
Bon révéil ?

Ok pour moi, j'ai modifier le fichier, et plus de message d'erreur.
Ainsi que pas de majuscule à saisir

Grand merci, ca m'a permis de cloturer ce petit soucis :)
Vous êtes vraiment balaise sur ce forum

Ci joint le fichier clot

bonne journée
 

Pièces jointes

  • ClasseurAlpha2.xls
    35.5 KB · Affichages: 285
  • ClasseurAlpha2.xls
    35.5 KB · Affichages: 280
  • ClasseurAlpha2.xls
    35.5 KB · Affichages: 288

Jacques87

XLDnaute Accro
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

bonjour Jeanbulle et Spitnolan08

Ce post m'intéressait mais par faute temps hier je n'ai pas pu y réfléchir
Chose faite ce matin, donc je me permets d'apporter un petit plus

Cordialement

Oups, Chti60, pas actualisé donc pas vu
on a eu la même idée
Cordialement
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Re
Salut Jacques
Salut JC
Tout d'abord meilleurs Voeux pour cette nouvelle Année

arfff Encore du nouveau je me demande où il va chercher ces trucs lol (Merci Hervé)
pas mal du tout ce Scripting.Dictionary ,je vais rechercher le Fil

Bonne Journée
 

Spitnolan08

XLDnaute Barbatruc
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

B'jour Chti160, Jeanbulle, Jacques67, JCGL,

Effectivement c'est beaucoup plus agréable et plus pro! Du beau travail les gars.
Et Merci à chti160 pour le fil sur le scripting.dictionary qu'il vient de remettre à dispo sur :
https://www.excel-downloads.com/threads/vba-mystere-sur-dictionary.72981/


L'un d'entre vous n'aurait pas par hasard une réponse à m'apporter sur un autre fil ?;)
https://www.excel-downloads.com/threads/icones-multipage-pour-pro-du-forum.72988/

Bonne année!
 

Jeanbulle

XLDnaute Occasionnel
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonjour à tous !
Je ne pensais pas que dans la journée, un tas de petite idée aura survenu à tant de personne ! hu hu ... a mon grand bonheur.

Et le fichier que tu as posté JCGL ? ... en fait, il rajoute le tri des doublons ? C'est bien ca ?


En tout cas, bien joué ^^
Celui de jacques87 et chtit160 sont parfait pour mon cas je pense


Tant que j'y pense, si vous voulez continuer à vous amuser sur mes fichiers ... AUCUN PROBLEME :) j'en poste d'autre ;)

Humour bien sur. . . mais à suivre

Bonne soirée
 

JCGL

XLDnaute Barbatruc
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonsoir à tous, JeanBulle,

Content que tous nos essais te conviennent :)
Sutout ceux des autres :mad:

Humour aussi :D et on te suit...

Et le fichier que tu as posté JCGL ? ... en fait, il rajoute le tri des doublons ? C'est bien ca ?

Exactement et il faut remercier Hervé pour le code
 

Jeanbulle

XLDnaute Occasionnel
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonsoir,

Disons que ta version ne m'interessait pas, je n'aurais logiquement pas de doublon sur ce fichier.
Mais ... je mets de coté pour autre chose :)

Une question par contre :
Etant donné que ma feuil1, colonne A, est remplie par un userform ligne par ligne, par des noms. ( non retranscrit sur le fichier ).
Lorsque j'ajoute un nom à la première ligne vide rencontrée, je fais ensuite un tri alphabétique de cette colonne. . . mais j'ai un bug.
Voici mon code pour le tri :
Code:
WSCible.Range("A1").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

Le bug rencontré est le suivant :
Erreur 1004 La méthode select de la classe range à échoué.


J'ai essayé de modifier le code, en mettant simplement
WSCible.range("A1") sort key1:=Range("A1")
En notant dans la cellule A1 : ab
Mais pareil ... Alors .. je suis pas un boss, j'essaye mais me casse les dents sur les erreurs. Je suis sur que l'un d'entre vous trouve la solution en moins de dix secondes :)

Merci de votre aide en tout cas !
Bonne soirée
 

Jacques87

XLDnaute Accro
Re : Listbox = Liste des clients...Besoin d'une selection lettre à lettre

Bonsoir,

tu écris
WSCible.Range("A1").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom​

essaie
Code:
[LEFT]WSCible.Select
WSCible.Range("A1").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom[/LEFT]

ou encore

Code:
WSCible.Select
[LEFT]WSCible.Range("A1").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom[/LEFT]

mais, comment peux tu faire un tri avec une cellule A1, j'attendrais plutôt A1:A12 par exemple

A+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 452
Messages
2 088 544
Membres
103 880
dernier inscrit
rafaelredsc