re-,
Lorsque tu es sur l'userform "SearchDialog", fais un double clic sur la ListView
tu tombes alors sur le code :
Private Sub ListView1_DblClick()
LaLigne = Me.ListView1.SelectedItem.SubItems(8)
Me.Hide
Corrections.Show
End Sub
Comme j'ai déclaré :
Public LaLigne As Long
dans un module standard, Excel conserve donc en mémoire cette variable, qui correspond à la ligne sur laquelle tu as double cliqué....
Edit, j'ai oublié de préciser, mais dans la ListView, il y a 8 colonnes, mais seulement 7 de visibles...
.Add , , FSource.Cells(1, 1), 0
Le 0, à la fin, signifie sa largeur...
Lorsque tu changes la valeur du combobox, tu entres le numéro de ligne dans cette colonne invisible
.ListItems(Lig).ListSubItems.Add , , C.Row
et cette colonne s'appelle 8 (Me.ListView1.SelectedItem.SubItems(8), plus haut)
Dans l'userform "Corrections", à l'initialisation, tu as ce code :
For I = 1 To 8
Me.Controls("TextBox" & I).Value = Sheets("BDDChemicals").Cells(LaLigne, I + 1).Value
Next I
comme on connaît le numéro de ligne, on remplit les textboxs de 1 à 8 avec les numéros de colonne (I +1) car tu commences en colonne B