XL 2016 Saisie semi-automatique (VBA ou formule mais pas en insérant des objets)

albatore78

XLDnaute Nouveau
Bonjour @tous,

Après avoir consulté plusieurs site, je n'arrive pas à trouver ce que je veux. En effet, je souhaite avoir dans une cellule un menu déroulant, dont la liste provient d'une autre feuille, avec une saisie semi-automatique. Seul hic, il faut que la personne ne puisse pas saisir autre chose que ce qui se trouve dans le menu déroulant.

J'ai trouvé plusieurs méthodes mais à chaque fois il y a quelque chose qui ne me convient pas. En effet, en utilisant "Validations de données", on est obligé de retirer le message d'alerte bloquant. J'i essayé également avec la formule DECALER mais même constat.

Auriez-vous une solution qu'elle soit en VB ou avec une formule ?

En vous remerciant par avance,

Bonne journée,
 
Solution
Bonjour albatore78,
J'ai l'impression que la position du résultat se fait en mode "graphique" et que l'on ne définit pas cette dernière de manière habituelle (ex : E14) . Et du coup je ne vois pas comment on fait pour dire que le résultat doit être dans une case précise.

Il n'y a pas grand chose à faire mais quand même, un minimum ! (Voir le fichier)

2020-09-24_080232.jpg

Dudu2

XLDnaute Barbatruc
La recherche est basique (caractères accentués doivent être respectés) mais ne tient pas compte de la casse.
La liste des évènements a été placée dans un tableau structuré pour en simplifier l'accès.
 

Pièces jointes

  • Classeur1.xlsm
    26.5 KB · Affichages: 6

albatore78

XLDnaute Nouveau
S'il faut supprimer les accents, ce n'est pas un problème. J'avais trouvé ce module sur un autre site. Mais du coup on ne voit pas du tout la liste tant que l'on n'a pas inscrit un minimum de 3 caractères et c'est ce qui me gêne un peu. Par contre une fois que l'on a sélectionner la valeur, cette dernière peut être inscrite dans une cellule ?
 

Dudu2

XLDnaute Barbatruc
Par contre je ne sais pas colorer (en rouge par exemple) dans la liste des évènements sélectionnés (ListBox) la partie dans chaque ligne correspondant au terme saisi dans la TextBox.
Pour ça je suppose qu'il faudrait utiliser un tableau structuré dans la feuille et dans ce cas savoir si et où il est possible de l'afficher.
 

Dudu2

XLDnaute Barbatruc
on ne voit pas du tout la liste tant que l'on n'a pas inscrit un minimum de 3 caractères et c'est ce qui me gêne un peu.
Maintenant on la voit.

Par contre une fois que l'on a sélectionner la valeur, cette dernière peut être inscrite dans une cellule ?
Dans le code c'est la variable ÉvènementChoisi qui contient le choix.
J'espère que tu sais placer le contenu d'une variable dans une cellule sinon ce sera difficile ne serait-ce que d'intégrer ce code dans ton projet.
 

Pièces jointes

  • Classeur1.xlsm
    24 KB · Affichages: 4

albatore78

XLDnaute Nouveau
Bonjour.
Un essai
C'est super c'est exactement ce que je souhaite car on ne peut pas saisir autre chose que ce qu'il y a dans la liste. Par contre, je vois que ce listing fonctionne dans toutes les lignes. Quelle est la partie du code qu'il faut modifier si on veut que ça fonctionne uniquement dans une cellule particulière ? Car j'ai lu un peu le code mais mon niveau ne me permets pas de comprendre la moitié :-(
 

albatore78

XLDnaute Nouveau
Maintenant on la voit.


Dans le code c'est la variable ÉvènementChoisi qui contient le choix.
J'espère que tu sais placer le contenu d'une variable dans une cellule sinon ce sera difficile ne serait-ce que d'intégrer ce code dans ton projet.
J'avoue que je ne maitrise pas. Mais si tu m'expliques la procédure je devrais y arriver :) . Juste en me montrant un exemple je pense que je devrais pouvoir l'adapter à mon projet.
 

Dudu2

XLDnaute Barbatruc
Juste à titre d'exercice j'ai voulu faire rapidement la version avec tableau et highlight du texte saisi dans la liste sélectionnée.
Mal m'en a pris, ça a été plus laborieux que prévu (ces tableaux structurés en VBA, Resize et tout, c'est vraiment pénible). Mais c'est pas mal comme résultat.
 

Pièces jointes

  • VBA Choix sur liste Tableau filtré par la saisie.xlsm
    43.3 KB · Affichages: 4
Dernière édition:

albatore78

XLDnaute Nouveau
Juste à titre d'exercice j'ai voulu faire rapidement la version avec tableau et highlight du texte saisi dans la liste sélectionnée.
Mal m'en a pris, ça a été plus laborieux que prévu (ces tableaux structurés en VBA, Resize et tout, c'est vraiment pénible). Mais c'est pas mal comme résultat.

Bonjour,
J'ai essayé de lancer le fichier mais dès que je clique sur le bouton, ce dernier ne fonctionne pas et je tombe directement en mode debug. C'est la version d'Excel qui peut poser problème ?
 

Pièces jointes

  • bug lorsque l'on appuie sur le bouton.jpg
    bug lorsque l'on appuie sur le bouton.jpg
    182.1 KB · Affichages: 6

Dudu2

XLDnaute Barbatruc
Ah tu es sûrement en Office 64 bits et ça a détecté de mauvaises déclarations des fonctions API.
J'ai corrigé. Essaie à nouveau avec le fichier modifié du message #28.
J'ai aussi rendu la recherche et le highlight multi-mots.

Dis-moi si ça marche.. ou pas. Je suis en 32 bits et suis intéressé de savoir si les déclarations des fonctions de l'API sont OK ou pas.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin