anto37_44
Messages postés48Date d'inscriptionmardi 3 avril 2007StatutMembreDernière intervention11 juin 2007
-
6 juin 2007 à 11:16
anto37_44
Messages postés48Date d'inscriptionmardi 3 avril 2007StatutMembreDernière intervention11 juin 2007
-
6 juin 2007 à 12:05
Bonjour à tous
J'ai encore besion de votre aide (qui jusque là m'a été trés précieuse).
J'ai une listbox dans la laquelle je voudrais pouvoir changer l'ordre des messages.
J'arrive à deplacer une ligne avec ce code:
Private Sub Comman_Click()
i = List2.ListIndex
chaine = List2.Text
j = List2.ListIndex - 1 '- pour monter, + pour descendre'
List2.RemoveItem (i)
Call List2.AddItem(chaine, j)
List2.Refresh
List2.Selected(j) = True
End Sub
Ce que j'aimerais c'est pouvoir monter/descendre plusieurs lignes d'un coup.
Si je selectionne plusieurs lignes et que je monte/descend avec ce code, y'en à qu'une qui monte/descend
Si qu'un a une idée sur le code à taper je le remerci par avance
anto37_44
Private Sub CcBtnMove_Click(Index As Integer)
Dim sBuffer As String
Dim i As Long
Dim nStart As Long
Dim nStop As Long
Dim nStep As Long
If Index Then
nStart = CcLst.ListCount - 1
nStep = -1
Else
nStop = CcLst.ListCount - 1
nStep = 1
End If
For i = nStart To nStop Step nStep
If CcLst.Selected(i) Then
sBuffer = CcLst.List(i)
CcLst.RemoveItem i
If Index And i < CcLst.ListCount Then
If Not CcLst.Selected(i) Then
i = i + 1
End If
ElseIf Index = 0 And i > 0 Then
If Not CcLst.Selected(i - 1) Then
i = i - 1
End If
End If
CcLst.AddItem sBuffer, i
CcLst.Selected(i) = True
End If
Next i
End Sub , ----
By Renfield