[VBA] Griser ou cocher une ligne dans un ListBox

Hello la team,

J'ai un ListBox dans un Userform comme sur la photo:

image

Et je souhaiterais par VBA "Verrouiller" certaines lignes.

J'ai imaginé plusieurs solutions qui je pense ne sont pas possible:

Griser les lignes concernées (Mais je crois qu'on ne peux pas changer de couleurs sur ce genre d'objet)

• Barrer le texte comme cela: Template : LAP management - "F" assembly hall

• Ajouter un caractère au début du style : ☐ et 🗹 (Mais ces caractères sont interdit en VBA ?)

Vous avez compris l'idée, peut importe la manière d'y arriver mais je suis à cours d'idées là pour faire quelques chose de propre.

Vous avez d'autres propositions ? :D

A+

Bonjour,

Allez dans l'éditeur VBA, sélectionnez votre listbox puis allez dans les paramètres
- Mettez la propriété Liststyle sur "1-fmListstyleOption"
- Mettez la propriété Multiselect sur "1-fmMultiselectMulti"

Cordialement

Salut Dan,

Merci ca me semble être une parfaite solution.

Deux petites questions:

• l'évènement "ListBox_Click" ne se déclenche plus... Possible de résoudre ça ? j'aimerais éviter de passer par un bouton de validation.

Résolu en passant par Listbox_change

• Est-il possible de présélectionner des lignes à l'ouverture du UserForm ? N'ayant pas de propriété du style Me.ListBox.Row(2).Selected = True/False ou ce genre de chose je ne vois pas comment faire ?

A+

• Est-il possible de présélectionner des lignes à l'ouverture du UserForm ? N'ayant pas de propriété du style

Ce n'est pas une propriété mais un code à utiliser.
Lorsque vous dites des lignes ? Ce sont toujours les mêmes ?

Sinon si vous mettez ceci dans la macro Sub userform_initalize utilisée à l'ouverture de l'userform, cela devrait vous sélectionner la première ligne

ListBox1.Selected(0) = True

Listbox.Selected(0) c'est parfait, je n'ai peut être pas assez cherché je dois admettre.

Merci beaucoup !!!

A+

Rechercher des sujets similaires à "vba griser cocher ligne listbox"