Créer un menu déroulant "intuitif"

Bonjour le groupe, meilleurs voeux pour le cas où je ne l’aurais pas encore fait.
Je souhaite créer un « menu déroulant intuitif » dans une cellule.
J’explique.
Je voudrais en C14, saisir les premières lettres d’une localité, et que dans cette cellule apparaissent les noms des localités qui peuvent correspondre.
Par exemple, je saisis « Gue » en C14, et le menu me propose « Guessling-Hémering 57380 », en C14.
Alors j’aimerais avoir le procédé, afin de pouvoir le reproduire sur d’autres tableaux et d’autres menus si possible.
Merci de votre aide…

Norbert

Test menus déroulants sélectifs.xlsm (10,1 Ko)

Bonsoir,
Un tuto.
https://www.youtube.com/watch?v=di67SkiAwlI&t=5s
Cordialement

1 « J'aime »

Hello
heu, je peux me tromper, mais tu avais déjà fait cette demande et on t’avait donnée une solution…

1 « J'aime »

Bonsoir @taz067

Tu as raison. Mais dans cette solution, je dois saisir et rechercher la valeur dans une cellule à côté et ensuite sélectionner le bon résultat dans la cellule concernée.
Aujourd’hui, ma demande est. Puis-je saisir les premières lettres dans la cellule « D14 » de mon tableau et que dès la saisie des premières lettres dans cette cellule je trouve le nom de la localité recherchée.
Merci

Bonsoir @Zebulon

C’est ce que je cherche. Merci beaucoup. Reste plus qu’à apprendre les formules lol et tester chez moi.
Merci beaucoup.

Norbert

Voilà le fichier avec la méthode à Zebulon
Test menus déroulants sélectifs.xlsm (11,7 Ko)

Ça fonctionne, mais je suis obligé de validerl a saisie pour que la sélection s’affiche dans le menu déroulant.
Je cherchais une solution où en tapant les premières lettres, j’obtiens la sélection sans faire de return. Mais visiblement mon excel n’a pas la fonction filtre qui permettrait cette méthode.
Je sais que je suis exigeant, mais c’est ça qui me permet de progresser.
J’ai trouvé une formule qui me permet d’obtenir le début de ce que je cherche, mais pour poursuivre il me faudrait la fonction filtre, et je ne l’ai pas.
Je continue à creuser…
Merci en tous cas de ton aide…
Norbert

heu il n’y a pas de fonction filtre dans les formules, il n’y a que la fonction DECALER et EQUIV

Bonjour,
Une autre possibilité.
Cordialement
CPVillesFilter.xlsm (81,1 Ko)

1 « J'aime »

Bonsoir @Zebulon

Bon on est repartis pour un tour…
J’ai des messages de non prise en charge… Désolé.

Bonsoir @taz067

Voir le tuto ci-dessous.

Tout dépend de ta version effectivement, la fonction filtre n’est apparue dans Office qu’à partir de, si je ne m’abuse office 2021 (du moins sur PC) sur mac, je ne sais pas quand la fonction filtre et disponible.

1 « J'aime »

bonjour,
j’ai modifié la macro de @Zebulon un peu, mais normallement elle doit fonctionner, on utilise le « filter » de VBA qui existe depuis toujours (?).
A quelle moment avez-vous ce message ?
CPVillesFilter.xlsm (81,6 Ko)

Bonjour @Cow18


Impossible d’ouvrir le fichier joint

Pour ce qui concerne la fonction « Filtre » j’ai un message en essayant de taper « =FILTRE » Il me dit que cette fonction n’existe pas.
J’avais trouvé un tuto où la procédure correspondait à mes recherches, mais la dernière phase impossible à créer chez moi.
Merci en attendant…
Norbert

Bonjour,
Peut être que le fichier au format originel ne génèrera pas d’erreur ?
Cordialement
CPVillesFilter.xls (220,5 Ko)

@Zebulon

Bonjour,
Le fichier s’ouvre sans problème. Mais en voulant saisir dans la première cellule jaune, ça écrit ailleurs, et les flèches n’activent rien, puis ça m’affiche un « livre » dans lequel je ne comprends rien.
Désolé…

j’ai telecharger le fichier originel et chez moi ça fonctionne…
la compatibilité entre mac et Pc n’a jamais été la pus fonctionnelle :upside_down_face:

si j’etait mauvaise langue je dirais change d’ordinateur et prends un sous windows :innocent: :rofl:

1 « J'aime »

re,
Chaque cellule en jaune (plage E2;E10) doit contenir un Combobox
image
Dans windows onglet Développeur, Insérer, Contrôles ActiveX, Zone de liste déroulante.
image

Il te faut trouver l’équivalent Mac.
Bon courage.

1 « J'aime »

la fonction « filter » que vous utilisez avec « =filtre(…) » n’a rien à faire avec la fonction « filter » de VBA.
un test, si vous mettez ceci dans un module normal de VBA (ne pas le module d’une feuille), cela vous donne un msgbox ou une erreur ?

Sub test()
     Dim X
     X = Filter(Application.Transpose(Range("maliste")), " al", 1, 1)
     MsgBox UBound(X) & vbLf & vbLf & Join(X, vbLf)
End Sub

1 « J'aime »

@Cow18
Désolé Cow18, je n’y connais rien en VBA.
J’avais trouvé un tuto, où justement il réglait ça avec des formules, dont la dernière était basée sur « =Filtre »…
Pas grave, je continue avec les menus déroulants pour l’heure. J’ai bcp appris en attendant à travers vos différents retours sur bcp de choses…

Merci beaucoup… et à plus pour d’autres questions certainement.