Bonsoir Avoriaz,
Je ne suis pas certain de bien comprendre ce que tu veux faire. C'est pourquoi je t'envoie en pièce jointe un petit exemple qui propose une solution au problème que tu poses, du moins tel que je le perçois.
=======================================================
Private Sub TextBox1_Change()
Set Cel = Intersect(UsedRange, Columns("A")).Find(What:=TextBox1.Value, LookAt:=xlWhole)
If Cel Is Nothing Then
TextBox2.Value = "Pas trouvé"
Else
TextBox2.Value = Cel.Offset(0, 1).Value
End If
End Sub
=======================================================
Je pense détecter dans ton code plusieurs anomalies :
- Que se passe-t-il si la valeur n'est pas trouvée ?
Cells.Find(Val, Range("A1"), , xlByRows).Row ne peut être évalué
- Dernière instruction, il faudrait écrire :
TextBox2.Value = Rows(lig).Range("b:b").Value
N'hésite pas à me recontacter si "je n'ai rien compris"
Cordialement.
Omicron