Supprimer Item ListBox

Wisigoth

XLDnaute Nouveau
Bonjour,

J'ai une 1ere listbox que je charge à partir de mon classeur :

Code:
For Each z In a.Range("D2:D" & a.[D65000].End(xlUp).Row)
    Me.ListBox1.AddItem z
    Next z

De cette 1ere listbox je sélectionne certaines valeurs à exporter vers la 2eme listbox (sur le même userform):

Code:
Private Sub ListBox1_Click()

Dim i As Integer

With Me.ListBox1
For i = 0 To .ListCount - 1
        If .Selected(i) = True Then
            Me.ListBox2.AddItem ListBox1.List(i)
        End If
    Next i

End With

End Sub

Ensuite je voudrais permettre la suppression de certains éléments de la listbox2 en cas d'erreur, or c'est ici que ça bloque avec une erreur non répertoriée et la ligne removeitem de surlignée. Voici le bout de code:


Code:
Private Sub ListBox2_Click()

Dim j As Long

With Me.ListBox2
For j = .ListCount - 1 To 0 Step -1
        If .Selected(j) = True Then
           .RemoveItem (j)
        End If
    Next j
    
End With

End Sub


Je vous remercie d'avance pour toute aide, et m'excuse si le format de ma demande n'est pas très clair, c'est ma toute 1ere fois. :eek:
 

Wisigoth

XLDnaute Nouveau
Re : Supprimer Item ListBox

Voici un fichier exemple.

Quand je parle d'erreur, je voulais juste dire que l'utilisateur puisse ajouter et enlever à volonté des items de la liste 2 avant de valider définitivement son choix.

Merci.
 

Pièces jointes

  • test.xlsm
    22.5 KB · Affichages: 51
  • test.xlsm
    22.5 KB · Affichages: 44

tototiti2008

XLDnaute Barbatruc
Re : Supprimer Item ListBox

Re,

Bizarre, si sélectionné alors ça bug
Pas assez joué avec les listbox moi :)

Essaye comme ça :
Code:
Private Sub ListBox2_Click()


Dim j As Long


With Me.ListBox2
For j = .ListCount - 1 To 0 Step -1
        If .Selected(j) = True Then
.selected(j)=false
           .RemoveItem (j)
        End If
    Next j
    
End With


End Sub
 

xhudi69

XLDnaute Accro
Re : Supprimer Item ListBox

Bonjour Wisigoth, le Forum,
Bonjour tototiti2008 :)

Essaies ceci:
Code:
Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
If ListBox2.ListCount > 0 Then
    ListBox2.RemoveItem (ListBox2.ListIndex)
End If
End Sub

Je fait toujours une suppression d'Item dans un ListBox par un double click car problème de ListIndex.

@+ :cool:
 

Discussions similaires

Réponses
4
Affichages
333
Réponses
4
Affichages
353

Statistiques des forums

Discussions
314 017
Messages
2 104 582
Membres
109 083
dernier inscrit
Stef06