Charger une ListBox avec un TextBox - Erreur non répertoriée

Bonjour le Forum !

Je viens vers vous car j'essaye de charger une ListBox à partir d'une saisie dans un TextBox.

Cependant, lorsque je saisie une lettre dans le champ de recherche j'ai l'erreur ci-dessous qui apparaît :

capture

J'ai essayé plusieurs méthodes trouvées sur différents sujets / fichiers, mais rien ne marche x)

Vous auriez une solution ?

Ci-joint le fichier en question !

Bonjour,

Tu ne peux pas modifier en cours d'exécution une ListBox définie par Rowsource. Il faut la charger via la propriété "List".

Ci-dessous correction du code:

Private Sub UserForm_Initialize()
    Dim Qn As Integer, Sn As Integer

    With Feuil1
        Qn = .Range("Q" & Rows.Count).End(xlUp).Row
        Me.ListBoxCie.List = .Range("Q2:Q" & Qn).Value
        Sn = .Range("S" & Rows.Count).End(xlUp).Row
        Me.ListBoxAnnee.List = .Range("S2:S" & Sn).Value
    End With
End Sub

NB: inutile de répéter le formulaire car l'objet "Me" le représente.

Bonjour Thev,

Merci pour ton explication et ton code

L'erreur n'apparaît plus à présent

Bon, maintenant faut que j'arrive à charger ma ListBox xD

Encore merci !

Bonjour,

J'ai actualisé le code avec des variables plus explicites et la référence complète à Feuil1.

Bonjour

a voir aussi avec la recherche

Option Explicit
Dim Sh As Object

Private Sub UserForm_Initialize()
    Set Sh = Feuil1
        ListBoxAnnee.List = Sh.Range("S2:S" & Sh.Range("S" & Rows.Count).End(xlUp).Row).Value
    InitList
End Sub

Private Sub InitList()
Dim L&
    With ListBoxCie
        .Clear
            For L = 2 To Sh.Range("Q" & Rows.Count).End(xlUp).Row
                If UCase(Sh.Cells(L, 17)) Like UCase(TextBox1.Value) & "*" Then
                  .AddItem Sh.Cells(L, 17)
                End If
            Next
    End With
End Sub

Private Sub TextBox1_Change()
    InitList
End Sub

Private Sub CommandButton2_Click()
    Unload Me
End Sub

A+

Maurice

Archer, Thev,

Merci à tout les deux pour votre aide !

@Archer

Tes codes fonctionnent impec' ;D

La TextBox permet bien de mettre à jour la ListBox en fonction de la valeur indiquée

Merci beaucoup !

J'abuse peut-être en continuant à vous demander de l'aide mais vous savez comment "maintenir" une ligne coché après avoir utilisé la TextBox ? :p

En effet, j'ai bien besoin de l'option "MultiSelect" et la ligne que j'ai coché après utilisation du TextBox se décoche automatiquement après avoir effacé ma TextBox !

Sinon je dirais à mes collègues que le TextBox c'est pour les traitements uniques xD

Bonjour,

Il me semble qu'en mettant cette instruction :

If TextBox1 = Empty Then Exit Sub

au début de la procédure événementielle, cela devrait résoudre le problème.

Rechercher des sujets similaires à "charger listbox textbox erreur repertoriee"