Liste déroulante dans userform

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

G

GT

Guest
Bonjour,
J'ai crée un userform avec une listbox.
Je souhaites obliger l'utilisateur à sélectionner une des propositions dans cette listbox. Chaque proposition est un champ de texte.
Comment puis-je procéder ?
D'avance merci pour votre aide
 
Salut GT,

Si l'utilisateur doit cliquer sur un bouton, insere un test dans ce bouton.

Dim IzSelect as Boolean

for i = 0 to Listbox1.count - 1
if Selected(i)=true then
IzSelect=True
exit for
end if
next i

if IzSelect <> True then '/!\ IzSelect peut etre aussi Null ou False
msgbox "Selectionner une proposition SVP"
exit sub
end if

Dis moi si ca marche, A++, Sylsyl.
 
Merci de cette réponse.
Cependant juste une petite précision. Le choix doit se faire parmi une liste de nom. Si aucun nom n'est sélectionné, la msgbox averti de devoir obligatoirement en selectionner un.
Je n'arrive pas à adapter ton code à mon application (mais suis p'têt pas très doué non plus...). J'ai même essayé avec les "option explicit" sans plus de réussite.

Si vous avez une idée ...

GT
 
Salut GT,

mis a part une erreur d'ecriture de ma part (corrigee en majuscule), il me semble que ca doit marcher.

Dim IzSelect as Boolean

for i = 0 to Listbox1.count - 1
if LISTBOX1.Selected(i)=true then
IzSelect=True
exit for
end if
next i

if IzSelect <> True then '/!\ IzSelect peut etre aussi Null ou False
msgbox "Selectionner une proposition SVP"
exit sub
end if

La pemiere partie parcours la listbox1 et met IzSelect a "True" si au moins un nom est selectionne.

Ensuite la deuxieme partie test si IzSelect est bon ou pas.
Si aucun nom n'a ete selectionne, IzSelect renvoie la valeur Null (puisqu'il n'a pas ete initialise), dans ce cas "IzSelect <> True " est vrai et le message "Selectionner une proposition SVP" est renvoye a l'utilisateur.

Tiens moi au courant,

A++, Sylsyl.
 
Salut GT,

es-tu sur que c'est la fonction COUNT qui n'est pas reconnu ?
peut-etre que VBA ne rouve pas ta ListBox1.
Ca arrive quand le code n'est pas ecrit directement dans la userform.

Essai UserForm1.Listbox1 au lieu d'ecrire simplement ListBox1.

A++, Sylsyl.
 
Voila, je viens d'avoir le pb est l'erreur est vraiment petite:

Utilise ListCount a la place de Count pour une listbox.

Il semblera que Count marche avec une combobox mais pas une list.

pour savoir si une methode est reconnue tape ceci:
Listbox1.C puis clique droit et "lister les proprietes/methode". Si Count n'est pas dedans, il ne sera pas reconnu...

Rappel: pour extraire la ieme ligne d'une listbox utilise Listbox1.List(i-1)

A++, Sylsyl.
 
- 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

  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
418
Réponses
8
Affichages
213
  • Question Question
XL pour MAC Graphique
Réponses
12
Affichages
271
  • Question Question
XL 2019 User Form
Réponses
9
Affichages
359
Réponses
118
Affichages
2 K
Retour