Listbox.remove item

Bonjour je ne comprends pas pourquoi ce code dans mon fichier ne fonctionne pas .

J'ai deux list box avec la meme chose à l'intérieur. lorsque je clique sur un je veux qu'il se supprime dans l'autre.

Je veux qu'a la base les deux list box soit rempli et non un vide et l'autre add item car parfois l'utilisateur devra cocher dans seulement un des deux list box et on ne sait jamais lequel d'avance.

Merci

73listbox-test.xlsm (19.82 Ko)

bonjour,

Vous ne pouvez pas utiliser RemoveItem dans cette situation.

Vous ne pouvez utiliser RemoveItem que si le ListBox est chargé avec la méthode AddItem

A+

ok .

je pourrais peut entre faire a l'initiation de mon userform .

Listbox 2 Add.item tous mes fruits .

Et ensuite le remove.item s'il est sélectionné dans le listbox1 fonctionnerais ?

Oui,

En fait vous pouvez aussi utiliser la méthode List pour charger le LIstBox :

ListBox1.List() = Range("A1:A10").Value

Seul RowSource est incompatible avec RemoveItem.

Ca ne marche pas ! Je ne comprends pas pourquoi. Est-ce possible de m'aider avec mon fichier joint

Merci

80listbox-test.xlsm (21.19 Ko)

Bah... C'est quand même une drôle d'idée !

Ça ne peut marcher correctement qu'une fois (tant que les 2 listbox sont équivalents) puisque vous parcourez la liste de 1 à son max. Après la première suppression il est évident que le ListBox 2 à un élément de moins et ne peut aller jusqu'à 4.

Remarquez toutefois que si vous supprimez d'abord le dernier puis le premier de la liste, la suppression se fait bien (sur le Userform).

Après il se produit un erreur bien logique puisque le nombre d'items n'est plus identique...

A+

Bonjour,

il faut que tu boucles sur tes 2 listes et que tu compares les libellés :

Private Sub ListBox1_Change()
    Dim i As Long, j As Long
    For i = 0 To Me.ListBox1.ListCount - 1
        If ListBox1.Selected(i) Then
            For j = ListBox2.ListCount - 1 To 0 Step -1
                If ListBox2.List(j) = ListBox1.List(i) Then
                    ListBox2.RemoveItem (j)
                End If
            Next j
        End If
    Next i
End Sub

eric

Rechercher des sujets similaires à "listbox remove item"