Recupere ligne complet Listbox

Bonjour

Mon fichier :

Dans mon Userform2 qui me sert de recherche (par le "n° de série"), j'affiche au fur et a mesure de ma recherche, dans le listbox1, toutes les valeurs contenant mon n° de série.

Ensuite, je Click dans le listbox1 sur la ligne qui m'interresse, et à partir de là, je voudrais récupérer les valeurs correspondantes dans les textbos en dessous, pour pouvoir les modifier.

Alors moi j'ai mis un bout de code qui me permet de récupère le n° ID de la ligne, et à partir de là je bloque.

numIdex = ListBox1.Text

Biensur, une fois les valeurs modifier, il faut que cela les modifies dans mon tableau excel

J'avance doucement

mon code :

Private Sub ListBox1_Click()
Dim idexClk As String

'On cherhe le n° d'index
For i = 0 To 8
    idexClk = ListBox1.Column(i)
    MsgBox idexClk
Next i

End Sub

là je scan bien mes index du listbox1.

Maintenant comment recuperer les valeurs de mon tableau correspondantes ? pour pouvoir les modifier...

Bonjour,

Un essai ...

Private Sub ListBox1_Click()
Dim Dlig As Long
Dim X As Long

    With Worksheets("Feuil1")
        Dlig = .Cells(Rows.Count, "E").End(xlUp).Row
        For X = 11 To Dlig
            If CInt(Me.ListBox1.List(Me.ListBox1.ListIndex, 0)) = .Cells(X, "A").Value Then
                Me.TextBox2 = .Cells(X, "A").Value
                Me.TextBox3 = .Cells(X, "B").Value
                Me.TextBox4 = .Cells(X, "C").Value
                Me.TextBox5 = .Cells(X, "D").Value
                Me.TextBox6 = .Cells(X, "E").Value
                Me.TextBox7 = .Cells(X, "K").Value
                Me.TextBox8 = .Cells(X, "L").Value
                Me.ListBox1.ListIndex = -1
                Exit For
            End If
        Next X
    End With
End Sub

ric

Bonjour

Maintenant comment modifier la valeur dans mon tableau correspondant au textBox6 ?

C'est à dire, je clique dans le Textbox6 (correspond au N° de série), si la valeur = 10 et que je met 15, cela modifie ma colonne correspondante dans le tableau.

En fait, je veux pouvoir modifier la valeur.

Bonjour,

Il restera quelques fignolages à effectuer. Je te laisse quand même vérifier si cela convient.

ric

Bonjour,

avec un pgm générique qui s'adapte à la BD

Boisgontier

Merci à vous

J'avance doucement mais surment.

Là je bloque sur une uncompatibilité de type, dans le userform2.

à ce niveau du code :

Private Sub BtnModif_Click()
Dim Dlig As String
Dim X As Integer

    With Worksheets("Feuil1")
        Dlig = .Cells(Rows.Count, "E").End(xlUp).row
        For X = 11 To Dlig
            If CInt(Me.TextBox2) = .Cells(X, "A").Value Then
                .Cells(X, "D").Value = Me.TextBox5
                .Cells(X, "E").Value = Me.TextBox6
               .Cells(X, "K") = CDate(TBox_Date)
                Exit For
            End If
        Next X
    End With
End Sub '

Mon fichier :

c'est au niveau de la "date retour". Celle ci ne s'affiche pas et me met le soucis.

Bonjour à tous,

C'est TBox_Date qui est vide, donnant l'erreur.

Le calendrier ne réussit pas à écrire dans TBox_Date.

TBox_Date est en partie superposé à TextBox11.

Il semble qu'il n'y ait que TBox_Date qui puisse appeler le Calendrier et je n'ai pas encore compris l'astuce.

Pour passer outre temporairement :

remplace .Cells(X, "K") = CDate(TBox_Date) par

If If Me.TBox_Date <> "" Then .Cells(X, "K") = CDate(TBox_Date)

ric

merci

J'ai trouvé l'astuce.

Il fallait rajouté mon Userform2 dans la feuil formCal :

Private Sub OK_Click()
    'on formate si nécessaire
    blOBFormatLong = Me.OBFormatLong.Value
    blOBFormatCourt = Me.OBFormatCourt.Value

    If Me.OBFormatCourt.Value = True Then UserForm1.TextBox1 = CDate(Jour.Value)
    If Me.OBFormatLong.Value = True Then UserForm1.TextBox1 = Format(Jour.Value, "[$-F800]dddd, mmmm dd, yyyy")
    UserForm1.TBox_Date = CDate(Jour.Value)
    'Userform2*
    If Me.OBFormatCourt.Value = True Then UserForm2.TextBox11 = CDate(Jour.Value)
    If Me.OBFormatLong.Value = True Then UserForm2.TextBox11 = Format(Jour.Value, "[$-F800]dddd, mmmm dd, yyyy")
    UserForm2.TBox_Date = CDate(Jour.Value)

    Unload Me
End Sub
Rechercher des sujets similaires à "recupere ligne complet listbox"