[VBA] - ListBox : Indice n'appartient pas à la sélection

Bonsoir,

J'aimerais que dans ma ListBox, n'apparaissent que les espèces [Colonne F] pour lesquelles l'enjeu est différent (exemple : Pour Agave americana : deux lignes avec enjeu très faible et enjeu faible en colonne H => L'espèce apparait dans la liste).

J'essaye quelque chose comme ça, mais j'ai une erreur.

Sur le document que je joins, le code est un peu plus brouillon, avec différents tests que j'ai réalisé, sans succès...

Dim tb() As String
Dim o%

    Set dc = Worksheets("Données Collector")
cr = dc.Range("F1").CurrentRegion
    Set z = CreateObject("Scripting.Dictionary")

ReDim tb(1 To UBound(cr, 1) + 1)

    For i = 2 To UBound(cr, 1)
            If cr(i, 6) = cr(i + 1, 6) And cr(i, 8) <> cr(i + 1, 8) Then
            o = o + 1
            tb(o) = cr(i, 6)
            End If
    Next i
        ListBox1.List = tb
        

Savez-vous comment corriger cela ?

Merci de votre attention !

Bonne soirée.

Bonsoir,

c'est cette instruction qui pose problème

    If cr(i, 6) = cr(i + 1, 6) And cr(i, 8) <> cr(i + 1, 8) Then

quand i vaut ubound(cr,1) si tu fais i+1 tu dépasses les limites du tableau vba.

je pense que tu devrais corriger ainsi

For i = 2 To UBound(cr, 1)-1
            If cr(i, 6) = cr(i + 1, 6) And cr(i, 8) <> cr(i + 1, 8) Then
            o = o + 1
            tb(o) = cr(i, 6)
            End If
    Next i

Bonsoir,

Merci pour votre aide !

Je n'ai plus d'erreur, mais ma liste comporte des doublons maintenant

Il va falloir que je trouve comment les enlever.

Bonne soirée

Bonjour

Pour mes combobox sans doublons je rajoute,cette instruction au cours de l'alimentation

ComboBox.ListIndex = -1

Cordialement

FINDRH

Rechercher des sujets similaires à "vba listbox indice appartient pas selection"