Bonjour,
Tu utilises un tableau Excel, que ce dernier à la gentillesse de te nommer ce tableau et te permettre d'utiliser le nom en VBA, ce qui rend inutile l'adjonction d'autres plages nommées...
Private Sub ComboBox1_Change()
Dim n%, i%
n = ComboBox1.ListIndex + 1
If n > 0 Then
For i = 1 To 2
Controls("TextBox" & i).Value = [Tableau1].Cells(n, i + 1)
Next i
Else
For i = 1 To 2
Controls("TextBox" & i).Value = ""
Next i
End If
End Sub
Private Sub UserForm_Initialize()
ComboBox1.List = [Tableau1].Resize(, 1).Value
End Sub
J'en ai profité pour modifier ton Initialize en utilisant le tableau, mais aussi List pour alimenter la Combo. RowSource crée un lien entre la plage et la liste, et si la propriété convient parfaitement pour un ensemble de données fixe que tu peux fixer par ailleurs dès la conception dans la fenêtre de propriété, cela peut poser problème avec des données dynamiques, ce que tu n'auras pas de cette façon.
Cordialement.