¿Cómo Puedo cargar un list box con columnas descontinuas filtradas?

El detalle es el siguiente tengo un listbox en el cual quiero cargar datos de columnas descontinuas previamente filtradas mediante un texbox, para así poder seleccionar cualquier dato en el listbox y llevarlo a otro formulario.

1 Respuesta

Respuesta
1

Si son menos de 10 columnas, puedes hacerlo con el método additem, si son más de 10 columnas entonces puedes hacerlo con la propiedad RowSource.

Un ejemplo con additem:

Private Sub CommandButton1_Click()
'Por.Dante Amor
    For i = 2 To Range("B" & Rows.Count).End(xlUp).Row
        If Cells(i, "B") = TextBox1 Then
            ListBox1.AddItem Cells(i, "B")
            ListBox1.List(ListBox1.ListCount - 1, 1) = Cells(i, "D")
            ListBox1.List(ListBox1.ListCount - 1, 2) = Cells(i, "F")
            ListBox1.List(ListBox1.ListCount - 1, 3) = Cells(i, "H")
            ListBox1.List(ListBox1.ListCount - 1, 4) = i
        End If
    Next
End Sub

en este ejemplo estoy agregando el número de fila en la columna 4 para identificar el número de fila filtrada de la hoja.


Ejemplo con rowsource:

Private Sub CommandButton1_Click()
'Por.Dante Amor
    Set h1 = Sheets("Hoja3")
    Set h2 = Sheets("temp")
    j = 2
    For i = 2 To h1.Range("B" & Rows.Count).End(xlUp).Row
        If h1.Cells(i, "B") = TextBox1 Then
            h2.Cells(j, "A") = h1.Cells(i, "B")
            h2.Cells(j, "B") = h1.Cells(i, "D")
            h2.Cells(j, "C") = h1.Cells(i, "F")
            h2.Cells(j, "D") = h1.Cells(i, "H")
            h2.Cells(j, "E") = i
            j = j + 1
        End If
    Next
    u = h2.Range("A" & Rows.Count).End(xlUp).Row
    ListBox1.RowSource = h2.Name & "!A2:D" & u
End Sub

En este caso también estoy agregando el número de fila en la hoja "temp" para saber cuál registro de los filtrados es el que estoy cargando en el listbox.


Solamente son ejemplos, deberás adaptarlos a tus datos y poner las columnas que necesitas cargar.


.

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

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas