drap drop

A

Aito

Guest
Bonjour,
je voudrai déplacer un élément dans un listbox :
- pour un trie manuel dans le listbox,
- sortir un élément de ce listbox vers une image dans le même userform (ex : image représentant une corbeille pour supprimer cet élément du listbox)
Merci pour toute aide
 
M

michel

Guest
Re: déplacer un item dans ListBox

bonsoir Aito

ci-dessous 2 methodes pour déplacer des éléments dans une listbox :

1. le premier doubleclick enregistre l'item de la ListBox dans une variable , puis supprime la ligne
le second DoubleClick insère la variable en mémoire à l'emplacement du curseur

Dim Cible As Boolean
Dim Valeur As String
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

   If Cible = False Then
   Cible = True
   Valeur = ListBox1
   ListBox1.RemoveItem ListBox1.ListIndex
   Else
   Cible = False
   ListBox1.AddItem Valeur, ListBox1.ListIndex + 1
   End If

End Sub


2. cet exemple permet lors d'un doubleClick de déplacer l'item d'un index vers le haut

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim Cible As Integer

On Error Resume Next

With ListBox1
&nbsp;&nbsp;&nbsp;If .ListIndex < 0 Then Exit Sub
&nbsp;&nbsp;&nbsp;Cible = .ListIndex

&nbsp;&nbsp;&nbsp;If Cible = 0 Then Exit Sub
&nbsp;&nbsp;&nbsp;.AddItem .Text, Cible - 1
&nbsp;&nbsp;&nbsp;.RemoveItem Cible + 1
&nbsp;&nbsp;&nbsp;.Selected(Cible - 1) = True
End With

End Sub


ci-joint une demo de @+Thierry pour la partie Drag&Drop

Lien supprimé


bonne soirée
MichelXld
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 749
Messages
2 091 623
Membres
105 009
dernier inscrit
aurelien76110