Filtrar registros a un listbox con condición

Una macro que usando un label, textbox, combobox, etc filtre los registros de una hoja de acuerdo al dato en el control y los muestre en un listbox.

2 Respuestas

Respuesta
1

Me puedes comentar sobre lo siguiente:

- En cuál control vas a capturar para tomar esa información y realizar el filtro

- Cómo se llama la hoja donde tienes la información

- En cuál columna quieres que se haga busque para filtrar

- En cuál fila empiezan los datos

- Qué información o qué columnas quieres cargar en el listbox

E spero tus comentarios en ese orden.

Gracias por la pronta ayuda estimado Dante, te comento:

Tengo una Hoja "Datos" con registros  con 16 columnas y n filas.

Al cargar o inicializar a un formulario, en un label esta fijado el dato a buscar ("Baja"), y con ese dato en el label, buscar en la hoja (columna 16) para luego mostrarlos en le listbox los registros que coinciden con el dato buscado. que muestre  las 3 primeras columnas. 

Los registros empiezan desde B2

Gracias.

Te anexo el código

Private Sub UserForm_Activate()
'Por.Dante Amor
    Set h = Sheets("Datos")
    ListBox1.ColumnCount = 3
    For i = 2 To h.Range("Q" & Rows.Count).End(xlUp).Row
        If LCase(h.Cells(i, "Q")) = "baja" Then
            ListBox1.AddItem h.Cells(i, "B")
            ListBox1.List(ListBox1.ListCount - 1, 1) = h.Cells(i, "C")
            ListBox1.List(ListBox1.ListCount - 1, 2) = h.Cells(i, "D")
        End If
    Next
End Sub

No entiendo si la columna que tiene "baja" es la 16 empezando en la columna A o la 16 empezando en la columna B, si es la 16 empezando en la B, entonces es la Q, si te refieres a la P, entonces cambia en la macro la "Q" por la "P".

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Creo que algo falta, abre el formulario con el listbox en blanco, o quizás no me explique bien, en el label insertado en el formulario contiene la palabra "Baja" predeterminado, ese dato tiene que buscarla en la columna 16 que es la Q, de la hoja y listar los registros de las 3 primeras columnas.

Hola Dante, haciéndole una modificación a tu macro y quitándole el LCase  funciona correctamente. Gracias.

¿Modificaste la palabra "baja" por "Baja"?

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

Quite el LCase y la palabra Baja la cambie por el control Label que contiene el dato a buscar, es decir la palabra "Baja". de esa manera la macro corre a lo deseado. Gracias

Respuesta
1

</Hola

Puedes poner como está organizado tus datos y el resultado deseado saludos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas