Deplacer ligne en haut d' un listbox multi column

Résolu
tommarianne Messages postés 20 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 29 octobre 2008 - 29 oct. 2008 à 11:34
tommarianne Messages postés 20 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 29 octobre 2008 - 29 oct. 2008 à 16:41
Bonjour à tous
office 2003
Feuille Excel - 5 colonnes (Nom-Prénom-Adresse-CP-Ville)
Je dispose d' un userform - 1 textbox - 1 listbox (columncount = 4)
Je tape un nom dans le textbox, ce qui alimente mon listbox avec (Prénom-Adresse-CP-Ville) sans doublons
d' adresse et/ou de prénom
Question : comment faire lors d' un click sur une ligne quelconque (donc 4 colonnes) du listbox, remonter cette ligne sélectionner en haut du listbox, tous en concervant les autres lignes du listbox ?

Merci d' avance pour vos réponses
Et désolé pour le précédent msg dans le mauvais forum

5 réponses

tommarianne Messages postés 20 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 29 octobre 2008
29 oct. 2008 à 16:41
Dim Lselec, Ltop
On Error Resume Next
With ListBox2
For a = 0 To .ColumnCount
Lselec = .List(.ListIndex, a)
Ltop = .List(.TopIndex, a)
.List(.TopIndex, a) = Lselec
.List(.ListIndex, a) = Ltop


.Selected(.ListIndex) = True
Next a
End With

je suis nul, c' etait pourtant simple
merci
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 oct. 2008 à 11:43
Bonjour,

Remonter cette ligne tout en haut de la liste (donc à la ligne 0) ?
ou
Remonter cette ligne tout en haut de la Listbox (donc au Topindex) ?

Ce sont deux choses différentes et il convient donc de préciser ce pont
0
tommarianne Messages postés 20 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 29 octobre 2008
29 oct. 2008 à 12:23
Remonter la ligne sélectionnée dans le listbox tout en haut du listbox
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 oct. 2008 à 12:58
Je t'ai alors déjà donné la réponse :
Utilise la propriété TopIndex !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tommarianne Messages postés 20 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 29 octobre 2008
29 oct. 2008 à 16:34
Merci jmfmarques mais j' ai ceci


Dim Lselec, Ltop
On Error Resume Next
With ListBox2
Lselec = .List(.ListIndex)
Ltop = .List(.TopIndex)
.List(.TopIndex) = Lselec
.List(.ListIndex) = Ltop


.Selected(.ListIndex) = True
End With

mais ceci ne marche que pour la première colonne et pas pour les 3 autres
peux tu m' aider
je continu mes recherche
a+
0
Rejoignez-nous