Salut à tous,

Voila j'ai plusieurs textbox (une dizaine) dont une (textbox20) avec une listbox au-dessous,

La textbox20 peut être considérée comme une barre de recherche.

En fonction de ce qui est saisi dans celle-ci, la listbox affichera des résultats,

Un click sur le listbox permet de selection une donnée dans le textbox.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Private Sub TextBox20_Change()
Worksheets("Base adresses").Activate
    ListBox1.Clear
    If TextBox20 <> "" Then
        For ligne = 3 To 40000
            If Cells(ligne, 1) Like "*" & TextBox20 & "*" Then
                ListBox1.AddItem Cells(ligne, 1)
            End If
        Next
    End If
End Sub
J'ajoute le résultat dans le textbox et aussi les résultats des cellules de la même ligne dans d'autre textbox
comme ceci:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Me.TextBox20 = Me.ListBox1.List(Me.ListBox1.ListIndex)
 
For ligne = 3 To 40000
    If Cells(ligne, 1).Value Like "*" & Me.TextBox20 & "*" Then
        Me.TextBox1 = Cells(ligne, 3).Value
        Me.TextBox2 = Cells(ligne, 4).Value
        Me.TextBox3 = Cells(ligne, 5).Value
        Me.TextBox4 = Cells(ligne, 6).Value
        Me.TextBox5 = Cells(ligne, 7).Value
        Me.TextBox6 = Cells(ligne, 8).Value
        Me.TextBox7 = Cells(ligne, 9).Value
        Me.TextBox8 = Cells(ligne, 10).Value
        Me.TextBox9 = Cells(ligne, 11).Value
        Me.TextBox10 = Cells(ligne, 2).Value
    End If
Next

Le problème c'est que je n'ai pas la possibilité de modifié une valeur dans une cellule au travers d'une de ces textbox.

Parce que au début de mon code l'insertion se fait de cette façon:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
a = textbox1.value
 
derlig = Feuil7.Range("A" & Rows.Count).End(xlUp).Row
Worksheets("bdd").Range("A" & derlig + 1).Value = a
Ce que j'ai fais est plutôt long.


Alors que j'aimerai avoir ce choix après avoir retouché le textbox:

- Modifier une donnée sur la ligne ou ajouter la donnée à la fin

Savez-vous comment s'y prendre pour avoir ce choix ?