Esta es mi solución, sigue mis pasos:
En mi ejemplo tenemos en la hoja1 y en la columna A unos nombres que pueden estar repetidos y en la columna B unos valores.
Creamos un userform con un combobox y un listbox de 2 columnas.
Estas serían las dos macros necesarias, por un lado la macro INITIALIZE para cargar el combo con los valores únicos de la columna A y por otro el evento CLICK del combo para volcar en el listbox todas la coincidencias del valor seleccionado en el combo
Private Sub ComboBox1_Click()
ListBox1.Clear
valor = ComboBox1.Value
Set busca = Sheets("hoja1").Range("a1:a100").Find(valor, LookIn:=xlValues, lookat:=xlWhole)
If Not busca Is Nothing Then
ubica = busca.Address
Do
ListBox1.AddItem busca
i = ListBox1.ListCount - 1
ListBox1.List(i, 1) = busca.Offset(0, 1)
Set busca = Sheets("hoja1").Range("a1:a100").FindNext(busca)
Loop While Not busca Is Nothing And busca.Address <> ubica
End If
End Sub
Private Sub UserForm_Initialize()
ComboBox1.Clear
Sheets("hoja1").Select
Range("a2").Select
Do While ActiveCell.Value <> ""
If InStr(valores, ActiveCell) = 0 Then
valores = valores & "," & ActiveCell
End If
ActiveCell.Offset(1, 0).Select
Loop
valores = Mid(valores, 2, Len(valores) - 1)
valores = Split(valores, ",")
For x = 0 To UBound(valores)
ComboBox1.AddItem valores(x)
Next
End Sub
recuerda finalizar y puntuar
Que Buen Aporte habría alguna forma de hacerlo con dos combobox? - Trolling Gutierrez Ramirez