clic sur ligne dans listbox

damdamdeo44

XLDnaute Nouveau
Bonjour,

j'ai une listbox dans laquelle en fonction de divers choix sur combobox et texbox elle afcihe les lignes correspondantes. je veux lorsqu eje clique sur un ligen avoir les cmpléments d'info sur des textbox différentes.

cela fonctionne sauf que je ne peux jamais obtenir l'info sur le clic de al deuxième ligne. j'ai bien la 1er
et la 3eme et meme un 4 mais rien sur la 2 elle reprends toujorus les infos de L-1 (ligne du dessus)


merci à tous

voici le code

<code>Private Sub ListBox5_Click()
Dim cptr As Byte, Article As String, Lig As Byte, n As Integer

For cptr = 0 To ListBox5.ListCount - 1
If ListBox5.Selected(cptr) = True Then
Article = ListBox5.List(ListBox5.ListIndex, 0)
With Sheets("Suivi NC")
Lig = .Columns("a").Find(Article, .range("a8"), xlValues, xlWhole).Row

Tcomment.Value = Cells(Lig, "Q")
Tavleader.Value = Cells(Lig, "X")
Tdateleader.Value = Cells(Lig, "W")
Tdatecrea.Value = Cells(Lig, "U")
Tredact.Value = Cells(Lig, "V")
Tstatuts.Value = Cells(Lig, "H")
Tformatete.Value = Cells(Lig, "F")
TNCtete.Value = Cells(Lig, "G")
Tzonetete.Value = Cells(Lig, "N")
Tatatete.Value = Cells(Lig, "L")
TDQn.Value = Cells(Lig, "R")
TNdqN.Value = Cells(Lig, "T")
Tdero.Value = Cells(Lig, "S")
TamAero.Value = Cells(Lig, "J")
TDeroAmaero.Value = Cells(Lig, "K")

End With


End If
Next
End Sub</code>

<config>Windows 7 / Internet Explorer 9.0</config>
 

Theze

XLDnaute Occasionnel
Re : clic sur ligne dans listbox

Bonjour,

Essai de cette façon :
Code:
Private Sub ListBox5_Click()

    Dim Article As String, Lig As Byte
    
    Article = ListBox5.List(ListBox5.ListIndex)
    
    With Sheets("Suivi NC")
    
        Lig = .Columns("A").Find(Article, .Range("a8"), xlValues, xlWhole).Row
        
        Tcomment.Value = Cells(Lig, "Q")
        Tavleader.Value = Cells(Lig, "X")
        Tdateleader.Value = Cells(Lig, "W")
        Tdatecrea.Value = Cells(Lig, "U")
        Tredact.Value = Cells(Lig, "V")
        Tstatuts.Value = Cells(Lig, "H")
        Tformatete.Value = Cells(Lig, "F")
        TNCtete.Value = Cells(Lig, "G")
        Tzonetete.Value = Cells(Lig, "N")
        Tatatete.Value = Cells(Lig, "L")
        TDQn.Value = Cells(Lig, "R")
        TNdqN.Value = Cells(Lig, "T")
        Tdero.Value = Cells(Lig, "S")
        TamAero.Value = Cells(Lig, "J")
        TDeroAmaero.Value = Cells(Lig, "K")
    
    End With
    
End Sub

Hervé.
 

damdamdeo44

XLDnaute Nouveau
Re : clic sur ligne dans listbox

Pour info si cela peut aider.
mon code marche avec trois lignes par exemple.
ok pour basculer entre ligne 1 et 3 mais impossible ligne 2
lorsque je cliquesur ligne 2 les infos récupérés sotn celles de ligne 1

voila et encore merci pour votre aide
 

Theze

XLDnaute Occasionnel
Re : clic sur ligne dans listbox

Re,

J'ai de la peine à te suivre, tu veux récupérer les infos qui se trouvent sur la même ligne que le mot recherché :
Code:
Lig = .Columns("A").Find(Article, .Range("a8"), xlValues, xlWhole).Row
ou alors, tu veux des infos qui se trouvent sur différentes lignes (plus haut ou plus bas que la ligne du mot cherché) ???

Hervé.
 

Theze

XLDnaute Occasionnel
Re : clic sur ligne dans listbox

Bonjour,

Comme tu exécute une recherche par rapport à ton choix dans la listbox, la proc retourne bien le n° de ligne où se trouve le mot recherché. Maintenant, si tu veux que les valeurs retournées le soient par rapport au n° de ligne de la listbox, il te faut utiliser ListIndex (ListBox5.ListIndex).

Hervé.
 

damdamdeo44

XLDnaute Nouveau
Re : clic sur ligne dans listbox

merci bcp theze de ton aide
mais ais trouvé solution au boulot cet apem en fait il fallait juste définir une colonne où les valeurs ne peuvent etre les mêmes
voci le code de correction si cela peut aider :
Code:
Private Sub ListBox5_Click()
Dim cptr As Byte, Article As String, Lig As Byte, n As Integer

For cptr = 0 To ListBox5.ListCount - 1
        If ListBox5.Selected(cptr) = True Then
          Article = ListBox5.List(ListBox5.ListIndex, 9)
          With Sheets("Suivi NC")
               Lig = .Columns("G").Find(Article, .range("G8"), xlValues, xlWhole).Row
                                      
                      Tcomment.Value = Cells(Lig, "Q")
                        Tavleader.Value = Cells(Lig, "X")
                            Tdateleader.Value = Cells(Lig, "W")
                                Tdatecrea.Value = Cells(Lig, "U")
                                    Tredact.Value = Cells(Lig, "V")
                                        Tstatuts.Value = Cells(Lig, "H")
                                            Tformatete.Value = Cells(Lig, "F")
                                        TNCtete.Value = Cells(Lig, "G")
                                    Tzonetete.Value = Cells(Lig, "N")
                                Tatatete.Value = Cells(Lig, "L")
                            TDQn.Value = Cells(Lig, "R")
                        TNdqN.Value = Cells(Lig, "T")
                    Tdero.Value = Cells(Lig, "S")
                TamAero.Value = Cells(Lig, "J")
            TDeroAmaero.Value = Cells(Lig, "K")
                    
        End With
          
    
        End If
Next
End Sub
 

Statistiques des forums

Discussions
312 321
Messages
2 087 237
Membres
103 497
dernier inscrit
JP9231