Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
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 !
Je recherche comment empêcher l'utilisateur de sélectionner un item dans une listebox. Il peut le visualiser (par exemple en gris) mais il ne peut pas le sélectionner (cela voudra dire qu'elle a déjà été choisie).
Avec une "listview" il est possible de modifier la couleur d'un enregistrement, mais avec une "listbox" il n'y a pas de propriétés qui portent sur un item de la liste.
Peut-être que le plus simple est de retirer l'élément de la liste ?
L'exemple suivant retire (clic sur le bouton) l'élément sélectionné :
Code:
Private Sub CommandButton1_Click()
On Error Resume Next
[COLOR="Red"]ListBox1.RemoveItem ListBox1.ListIndex[/COLOR] 'retire de la liste l'élément sélectionné
End Sub
Private Sub Userform_Initialize()
ListBox1.List = Array("toto", "titi", "tata")
End Sub
Si après avoir retiré l'élément on souhaite qu'il n'y ait pas de sélection, modifier ainsi :
Code:
Private Sub CommandButton1_Click()
On Error Resume Next
With ListBox1
.RemoveItem .ListIndex 'retire de la liste l'élément sélectionné
[COLOR="Red"].Selected(.ListIndex) = False [/COLOR]'désélectionne
End With
End Sub
Bonsoir à tous,
Désolée, je n'avais plus intenet depuis 15h.
En fait, je sais qu'il a été sélectionné car la macro fait une comparaison avec des cellules du fichier (à l'endroit où je mets les choix de l'utilisateur).
En fait dans un premier temps, j'avais opté pour l'option RemoveItem (suppression de l'item dans la liste). Mais cette liste je l'obtiens d'un autre fichier et je souhaite que l'utilisateur visualise toutes les possibilités de choix qu'il a lui même entré.
Si il voit qu'il en manque, il peut croire que sa saisie de départ n'a pas été faite correctement.
Si je ne peux pas opter pour la solution de "empêcher la sélection d'un item"? peut être que je peux passer par la colorisation d'un item et lorsque l'utilisateur clique dessus, je peux annuler sa sélection.
D'où ma nouvelle question : Comment colorer (en gris par exmple) un item dans une listbox?
On cherchant, j'ai bien l'impression que la colorisation par item dans une listbox, ce n'est pas possible.
Donc, j'ai une autre idée, je vais passer par une autre valeur dans ma listbox sur deux colonnes (type coche ou pas de coche)...en précisant à l'utilisateur ce que signifie cette coche (item déjà choisi). Si il sélectionne l'item, je pourrait tester avec cette deuxième valeur et désélectionner l'item.
Ci joint un fichier avec un exemple d'une "listview".
Sélection d'une ligne
Les données de la ligne choisie sont de couleur rouge
Si on sélectionne à nouveau la ligne un message indique que la ligne a déjà été sélectionnée.
- 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