Como filtrar informacion a 3 ListBox, segun condicion.

Tengo 3 ListBox, en el primer ListBox debe copiar informacion de la Hoja "Enero", en el segundo de la Hoja "FEBRERO" y en el ListBox tercero de "MARZO"
Pero la informacion se debe copiar a acuerdo al nombre que se selecciona.

Por ejemplo: Si selecciona JERSON QUISPE, entonces debe ir a la hoja ENERO y buscar el coordinador JERSON QUISPE, si en nombre no es igual al PRIMER coordinador entonces que verifique si el segundo es el nombre que selecciono, y si no que valla al tercero.

En este caso esta en el primero Coordinador JERSON QUISPE entonces en el ListBox 1 debe copiar sus trabajadores "desde MARIA ESPINOZA hasta OTTO GONZALES" con sus puntos y suma. En caso de no encontrar el nombre no Mostrar nada en el list box.
Luego ir a buscar a la Hoja FEBRERO el coordinador JERSON QUISPE Y COPIAR sus Empleados de ese mes al ListBox2 y por ultimo al tercer ListBox la misma funcion.

Espero que se haya entendido. Aqui dejo el archivo.

DESCARGAR ARCHIVO.

1 respuesta

Respuesta
3

Te anexo la macro.

Para verificar si es coordinador o no, la macro revisa si la celda está combinada, si está combinada quiere decir que es coordinador, así es como tienes el ejemplo en tu libro.

Private Sub ComboBox1_Change()
'Por.Dante Amor
    If ComboBox1 = "" Then Exit Sub
    ListBox1.Clear
    ListBox2.Clear
    ListBox3.Clear
    hojas = Array("ENERO", "FEBRERO", "MARZO")
    n = 1
    For h = LBound(hojas) To UBound(hojas)
        Set h1 = Sheets(hojas(h))
        Set b = h1.Columns("B:D").Find(ComboBox1, lookat:=xlWhole)
        If Not b Is Nothing Then
            f = b.Row + 1
            Do While True
                If Not h1.Cells(f, "B").MergeCells And h1.Cells(f, "B") <> "" Then
                    Controls("ListBox" & n).AddItem h1.Cells(f, "B")
                    Controls("ListBox" & n).List(Controls("ListBox" & n).ListCount - 1, 1) = h1.Cells(f, "C")
                    Controls("ListBox" & n).List(Controls("ListBox" & n).ListCount - 1, 2) = h1.Cells(f, "D")
                Else
                    Exit Do
                End If
                f = f + 1
            Loop
        End If
        n = n + 1
    Next
End Sub

Te regreso el archivo con la macro.

https://www.dropbox.com/s/6ywyhsiya3kh88y/BUSQUEDA%20dam.xlsm?dl=0 


Saludos. Dante Amor

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas