Te anexo el código
Dim cargando, h1, h2, col, fil
'
Private Sub ComboBox1_Change()
'Por.Dante Amor
Application.ScreenUpdating = False
If cargando = True Then Exit Sub
'Set h2 = Sheets("hoja2") 'hoja de nombres
'col = "A" 'columna de nombres
'fil = 2 'fila inicial
Label1.Caption = ""
Label2.Caption = ""
cargando = True
dato = ComboBox1
ComboBox1.Clear
For i = fil To h2.Range(col & Rows.Count).End(xlUp).Row
If UCase(h2.Cells(i, col)) Like "*" & UCase(dato) & "*" Then
ComboBox1.AddItem h2.Cells(i, col)
End If
Next
ComboBox1 = dato
'
'Se activa otro control para que aparezca el combo completo
CommandButton1. SetFocus
ComboBox1. SetFocus
ComboBox1. DropDown
If ComboBox1.ListIndex > -1 Then
Set b = h2.Columns(col).Find(ComboBox1.Value, lookat:=xlWhole)
If Not b Is Nothing Then
fila = b.Row
Label1.Caption = h2.Cells(fila, "A").Value
Label2.Caption = h2.Cells(fila, "C").Value
End If
End If
'
Application.ScreenUpdating = True
cargando = False
End Sub
'
Private Sub CommandButton1_Click()
If ComboBox1.Value = "" Or ComboBox1.ListIndex = -1 Then
MsgBox "Selecionar un producto"
ComboBox1.SetFocus
Exit Sub
End If
'
Set b = h2.Columns(col).Find(ComboBox1.Value, lookat:=xlWhole)
If Not b Is Nothing Then
fila = b.Row
u = h1.Range("E" & Rows.Count).End(xlUp).Row + 1
h1.Cells(u, "E").Value = h2.Cells(fila, "A").Value
h1.Cells(u, "F").Value = h2.Cells(fila, "B").Value
h1.Cells(u, "G").Value = h2.Cells(fila, "C").Value
End If
ComboBox1.Value = ""
End Sub
'
Private Sub UserForm_Activate()
'Por.Dante Amor
Set h1 = Sheets("Buscador")
Set h2 = Sheets("Base de Datos") 'hoja de nombres
col = "B" 'columna de nombres
fil = 2 'fila inicial
For i = fil To h2.Range(col & Rows.Count).End(xlUp).Row
ComboBox1.AddItem h2.Cells(i, col)
Next
End Sub
Abre el formulario, captura datos en el combo, automáticamente te mostrará las coincidencias.
'.[Sal u dos. Dante Amor. No olvides valorar la respuesta.