Comment garder l'ordre des items de la listBox1 lors de l'ajout ds listBox2

pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003 - 25 juil. 2003 à 11:31
pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003 - 25 juil. 2003 à 14:38
Bonjour,

Quelqu'un peut-il me dire comment faire pour garder le même ordre des items présents dans une liste ListBox1 lorsque l'utilisateur ajoute les items sélectionnés dans une seconde listBox ?

Le but étant d'avoir :
Si j'ajoute en premier l'image3, puis l'image2

ListBox1 :
Image1
Image2
Image3

listBox2 :
Image2
Image3

Et non plus ce que j'obtiens avec le code suivant :
ListBox1 :
Image1
Image2
Image3

listBox2 :
Image3
Image2

Voici le code du bouton qui permet de faire passer les items de la lst1 à la lst 2 en vba :

Private Sub CdButton2_AddSelected_Click()

Lst1.MultiSelect = fmMultiSelectExtended

Dim i As Long

For i = Lst1.ListCount - 1 To 0 Step -1
If Lst1.Selected(i) = True Then
Lst2.AddItem Lst1.List(i)
Lst1.RemoveItem i
End If

Next i

End Sub

Par avance merci,
fred

7 réponses

cs_Fabian Messages postés 36 Date d'inscription vendredi 5 octobre 2001 Statut Membre Dernière intervention 6 février 2009
25 juil. 2003 à 11:49
Lut
1 il faut que la propriété Sorted de la listbox soit True
2 après ton add, tu écris lst2.Refresh et ton remove lst2.Refresh

@+

Fabian
0
pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003
25 juil. 2003 à 12:12
Salut Fabian,

Je viens de rajouter la propriété Refresh à la suite de Add pour mes 2 listBox, et un message d'erreur apparait.

Faut-il que je déclare mes 2 ListBox en tant que variable car l'aide de l'éditeur VB ne me propose pas la propriété Refresh ?

Les 2 listes que j'ai créée dans une boite de dialogue, ne sont pas définis de la manière suivante :
Dim pList1 as ListBox
Dim pList2 as ListBox

Que me conseilles-tu ?
0
cs_Fabian Messages postés 36 Date d'inscription vendredi 5 octobre 2001 Statut Membre Dernière intervention 6 février 2009
25 juil. 2003 à 12:52
En quoi travailles tu ?
Excel, Access, etc ?
0
pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003
25 juil. 2003 à 13:51
Avec Arcmap, c'est un logiciel de SIG (Système d'Information Géographique), un produit de chez ESRI.
0

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

Posez votre question
pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003
25 juil. 2003 à 14:16
Mais c'est du VBA classique !!

Aurais-tu qq exemples même pour une autre application ?
0
cs_Fabian Messages postés 36 Date d'inscription vendredi 5 octobre 2001 Statut Membre Dernière intervention 6 février 2009
25 juil. 2003 à 14:31
Avec Access, il existe la propriété requery

Malheureusement, je ne pense pas que la propriété Sort existe en VBA !
0
pffred Messages postés 5 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 25 juillet 2003
25 juil. 2003 à 14:38
Effectivement, je ne dispose pas de la méthode Requery, mais par contre, je dispose de la méthode sort !

Penses - tu que ce soit cette méthode qu'il faut appliquer ?
Car ce que je souhaite avant tout c'est de garder la même position des items de la listBox2 que dans celle de la ListBox1.
0
Rejoignez-nous