¿Listbox SIN registros repetidos? Quiero apoyo

Estoy trabajando en un proyecto para una clínica, y necesito ayuda con un código.

Tengo una tabla por nombre "Pedidos Enfermería", con una columna que se llama "No Pedido". En esta columna se van agregando todos los pedidos que una persona genere, y la repetición de estos pedidos depende de la cantidad de artículos que se pedían. Ejemplo: si en un pedido se solicitan 10 artículos, en la tabla pedidos me aparecerá 10 veces ese numero de pedido, y si hago 20 artículos aparecerá 20 veces y así sucesivamente. Hasta ahí estamos bien. Ahora, quiero mandar esa información a un listbox, en donde me aparezcan todos los pedidos que se han hecho, pero solo quiero que me aparezca solo un registro de cada uno.

1 respuesta

Respuesta

Suponiendo que hay un rango con nombre llamado Lista con todos los datos que se quieren enviar al listbox quitando los repetidos, y que el listbox se llama ListBox1, prueba con:

Private Sub UserForm_Initialize()
    On Error GoTo captura
    Dim n As Long
    For n = 1 To Range("Lista").Rows.Count
        Me.ListBox1.AddItem Evaluate("=INDEX(Lista,SMALL(IF(MATCH(Lista,Lista,0)=ROW(INDIRECT(" & """1:""" & "&COUNTA(Lista))),MATCH(Lista,Lista,0)," & """""" & ")," & n & "-ROW(Lista)+1))")
    Next n
Exit Sub
captura:
    If Err.Number = -2147352571 Then Exit Sub Else MsgBox Err.Number & " - " & Err.Description
End Sub

Saludos_

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas