ListIndex d'une ListBox

olic95

XLDnaute Junior
Bonjour le forum,

En fait c'est un drôle de phénoméne.

J'affiche une ListBox MultiSelectExtended dont je positionne le ListIndex à -1 pour pourvoir tester sa valeur à la fin de la sélection. Si aucune sélection, message demandant à l'utilisateur de sélectionner au moins 1 ligne.

Si je ne sélectionne rien et que je descends dans la liste avec l'ascenseur, ListIndex prend la valeur de la dernière ligne de la liste.

Mon test est alors inutile !

Comment rester en ListIndex = -1 si je ne fais qu'utiliser l'ascenseur ?

Merci.

Olivier.
 

Pierrot93

XLDnaute Barbatruc
Re : ListIndex d'une ListBox

Bonjour Olic,

je viens de faire un test avec un listbox, et quand j'utilise l'ascenseur sans rien sélectionner listindex prend la valeur 0. Ci dessous une macro que j'utilise pour tester si une (ou plusieurs) valeur d'une listbox est selectionnée.

Si ca peut t'aider...

Code:
For I = 0 To ListBox1.ListIndex
    If ListBox1.Selected(I) = True Then
        ActiveCell = ListBox1.List(I, 1)
        ActiveCell.Offset(1, 0).Select
   End If
Next I

bonne journée
@+
 

olic95

XLDnaute Junior
Re : ListIndex d'une ListBox

Bonjour Pierrot,

J'y ai bien pensé... mais ça charge un peu plus le code.

0 c'est la première ligne !? Moi ça récupère la dernière !

Bizarre ce truc ! Doit bien y avoir une solution pour que la valeur de ListIndex ne change pas !!!
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : ListIndex d'une ListBox

Re

Toujours dans l'aide

Note Si vous utilisez la propriété MultiSelect pour créer un contrôle ListBox permettant plusieurs sélections, la propriété Selected du contrôle ListBox (plutôt que la propriété ListIndex) identifie les lignes sélectionnées. La propriété Selected est un tableau ayant le même nombre de valeurs que le nombre de lignes du contrôle ListBox. Pour chaque ligne de la zone de liste, la propriété Selected contient la valeur True si la ligne est sélectionnée, et False si elle ne l'est pas. Dans un contrôle ListBox permettant plusieurs sélections, la propriété ListIndex renvoie l'index de la ligne ayant le focus, que celle-ci soit ou non actuellement sélectionnée.
 

Pierrot93

XLDnaute Barbatruc
Re : ListIndex d'une ListBox

Re Olic, bonjour Pascal

Merci Pascal pour tes explications, et pourtant le code que j'ai donné ci dessous fonctionne bien, je l'utilise mais dans un USF basique !!! je vais privilégier la propriété ListCount alors.

Bon après midi
@+
 

Statistiques des forums

Discussions
312 606
Messages
2 090 176
Membres
104 435
dernier inscrit
ZAMAZ