[VBA] Listbox : Empêcher plus de 10 sélections

F22Raptor

XLDnaute Occasionnel
Hello
J'aimerais dans une Listbox à sélection multiple (qui contient quelques centaines d'items), que l'utilisateur ne puisse pas sélectionner plus de 10 items.
Donc, un onzième click sur la longue liste d'items ne devrait pas 'bleuter' la ligne.

Savez-vous si c'est possible ?

Merci !
 

F22Raptor

XLDnaute Occasionnel
Hello
Il ne l'est pas encore ! :D

Ma réflexion a précédé la création ... Je suis en train de le créer, mais avant de commencer, je m'interrogeais pour savoir si c'était possible.

Peut-être avec une combinaison de .Selected et de .ListIndex

Si je trouve la soluce, je la mettrai ici : ça pourra servir à d'autres ... Sinon, je reviendrai penaud (mais avec un fichier !)
 

F22Raptor

XLDnaute Occasionnel
VICTOIRE ! :D

Code:
    Dim i As Integer, Cptr As Integer

    For i = 0 To Me.ListBoxSource.ListCount - 1

        If Me.ListBoxSource.Selected(i) = True Then
            Cptr = Cptr + 1
        End If

    Next i

    If Cptr > 5 Then
        Me.ListBoxSource.Selected(Me.ListBoxSource.ListIndex) = False
    End If
 

F22Raptor

XLDnaute Occasionnel
je me demandais si c'était possible avant de me lancer dans le code pour rien ...
L'appel du code a été plus fort : j'ai testé quand même

Mais je peux effacer le sujet, éventuellement.
Cela dit, il pourrait servir à l'avenir à d'autres.
 

laetitia90

XLDnaute Barbatruc
bonjour F15000 Raptor :) ,staple 1600:)

trés contente de te croiser l'ami jean marie :):):):) cela fait un moment;);)

pour raptor;) on peut le faire sans boucle également je te laisse te lancer dans le code :rolleyes:
 

F22Raptor

XLDnaute Occasionnel
bon, je partais sur une petite idée ... qui comme d'habitude est en train de grossir ... Et le coup de la sélection limitée à 10 (résolu avec ma boucle, donc, mais je suis preneur d'autres méthodes) n'est finalement qu'un petit souci face aux nouveaux qui arrivent !!! :D

A bientôt minuit, je verrai ça demain !
Salut les gens
 

Discussions similaires


Haut Bas