Option Explicit
Dim F
Private Sub UserForm_Initialize()
Dim C As Range, mondico As Object
Set F = Sheets("BD")
Set mondico = CreateObject("Scripting.Dictionary")
For Each C In Range(F.Cells(2, 2), F.Cells(Rows.Count, 2).End(3))
mondico(C.Value) = C.Value
Next C
Me.Cb1.List = mondico.items
End Sub
Private Sub Cb1_Change()
Dim mondico As Object
Dim C As Range
Set mondico = CreateObject("Scripting.Dictionary")
For Each C In Range(F.Cells(2, 2), F.Cells(Rows.Count, 2).End(3))
If C = Me.Cb1 Then mondico(C.Offset(, 1).Value) = C.Offset(, 1).Value
Next C
End Sub
Private Sub TextBox1_Change()
Dim mondico As Object
Dim C As Range
Set mondico = CreateObject("Scripting.Dictionary")
For Each C In Range(F.Cells(2, 2), F.Cells(Rows.Count, 2).End(3))
If C = Me.Cb1 Then Me.TextBox1 = C.Offset(, 2).Value
Next C
End Sub