Bonjour,
Sur Exit des TextBox, marche dans les deux sens (code postal ou nom de ville) :
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Plage As Range
Dim Cel As Range
With Worksheets("Localités par code postal"): Set Plage = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
Set Cel = Plage.Find(TextBox1.Text, , xlValues, xlWhole)
If Not Cel Is Nothing Then TextBox2.Text = Cel.Offset(, 1).Value
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Plage As Range
Dim Cel As Range
With Worksheets("Localités par code postal"): Set Plage = .Range(.Cells(2, 2), .Cells(.Rows.Count, 2).End(xlUp)): End With
Set Cel = Plage.Find(TextBox2.Text, , xlValues, xlWhole)
If Not Cel Is Nothing Then TextBox1.Text = Cel.Offset(, -1).Value
End Sub