It really isn't too complicated
Replace your combobox with a textbox to type in and a list box to pick from
In Userform_Initialize, build an array of the Products (or whatever)
Option Explicit
Dim aryProducts As Variant
Private Sub UserForm_Initialize()
Dim r As Range
With Worksheets("Product_Master")
Set r = .Cells(2, 2)
Set r = Range(r, r.End(xlDown))
aryProducts = Application.WorksheetFunction.Transpose(r)
End With
Me.tbSearch.Text = vbNullString
End Sub
In Textbox_Change, fill the Listbox (Listbox AddItem) with Products that start with what is in the Textbox
Private Sub tbSearch_Change()
Dim i As Long
With Me
.lbProduct.Clear
If Len(.tbSearch.Text) = 0 Then Exit Sub
For i = LBound(aryProducts) To UBound(aryProducts)
If UCase(Left(aryProducts(i), Len(.tbSearch.Text))) = UCase(.tbSearch.Text) Then
.lbProduct.AddItem aryProducts(i)
End If
Next i
End With
End Sub
Save/Process/Select the listbox item that is highlighted
Private Sub CommandButton8_Click()
With Me
If Not IsNull(.lbProduct.Value) Then MsgBox .lbProduct.Value
.Hide
End With
Unload Me
End Sub