Mostrar en listbox solo las filas con dato, a partir de la columna 1 de la tabla.

Tengo una tabla con datos, la primera columna (A) es un ID, cuando se completa información en mi base de datos, el número del ID lo elimino, quedando vacío. Entonces cuando vuelvo a cargar el listbox, no quiero que las filas con ID vacío se muestren el el listbox.

El siguiente es el código que utilizo para cargar el listbox. La primera fila con dato ID es la 3.

Option Explicit

Sub cargarlista()

Dim i As Long
i = 2
Do While Hoja1.Cells(i + 1, 1).Value <>""

With ListContratosHH.ListBox1

.AddItem Hoja1.Cells(i + 1, 1).Value 
.List(i - 2, 1) = Hoja1.Cells(i + 1, 4).Value 
.List(i - 2, 2) = Hoja1.Cells(i + 1, 5).Value 
.List(i - 2, 3) = Hoja1.Cells(i + 1, 11).Value
End With

i = i + 1

Loop

End Sub

3 Respuestas

Respuesta
1

I. Hola Héctor, en mi caso no fui capaz de encontrar la información necesaria ni soy experto, pero deseaba dejarle los resultados de una búsqueda en Inglés y en especial a ofrecerme para trasladar su consulta a un experto en caso de que no recibiese respuestas en breve. Le ruego me disculpe todas las molestias, ánimo.

https://stackoverflow-com.translate.goog/questions/25324764/stop-blank-cells-entering-into-listbox?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://forum-ozgrid-com.translate.goog/forum/index.php?thread/110930-refresh-userform-listbox-data-without-listbox-clearing-each-time/&_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www-mrexcel-com.translate.goog/board/threads/show-only-filtered-data-in-listbox1.481305/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://stackoverflow-com.translate.goog/questions/75009451/listbox-to-display-data-from-columns-based-on-if-cells-in-specified-column-conta?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://answers.microsoft.com/en-us/msoffice/forum/all/listbox-shows-only-first-row-of-filtered-data-in/c8167c03-28c9-449e-82fc-9c633b86f44a 

https://www-access--programmers-co-uk.translate.goog/forums/threads/select-first-row-of-a-value-in-listbox.328161/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www-excelforum-com.translate.goog/excel-programming-vba-macros/701175-preventing-listbox-from-showing-blank-cells.html?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www.access-programmers.co.uk/forums/threads/listbox-with-bound-second-column.134217/ 

https://www-access--programmers-co-uk.translate.goog/forums/threads/select-column-value-in-a-listbox.321595/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www.access-programmers.co.uk/forums/threads/select-column-value-in-a-listbox.321595/ 

https://community-alteryx-com.translate.goog/t5/Alteryx-Designer-Desktop-Discussions/List-box-to-pull-row-values-from-single-column/td-p/325073?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://stackoverflow.com/questions/55982463/how-to-populate-a-listbox-in-a-userform-with-a-variable-set-of-rows-from-last-ro 

https://stackoverflow.com/questions/77123604/how-can-i-populate-my-listbox-with-only-certain-columns-from-a-worksheet 

https://stackoverflow.com/questions/65982314/why-does-this-listbox-only-displays-the-1st-2-rows-of-the-spreadsheet-and-doesn 

¡Gracias! 

Muy agradecido David por tu interés, excelente aporte.

Bendiciones,

I. Hola Héctor, muchísimas gracias por sus amables palabras :) me alegro de que pueda serle de utilidad.

Un abrazo.

Respuesta
1

Para asegurarte de que solo las filas con un ID no vacío se carguen en el ListBox

Modifique tu código ajustado:

Option Explicit
Sub cargarlista()
    Dim i As Long
    i = 3 
    With ListContratosHH.ListBox1
        .Clear 
        Do While Hoja1.Cells(i, 1).Value <> "" Or Hoja1.Cells(i, 1).Value <> 0
            If Hoja1.Cells(i, 1).Value <> "" Then
                .AddItem Hoja1.Cells(i, 1).Value
                .List(.ListCount - 1, 1) = Hoja1.Cells(i, 4).Value
                .List(.ListCount - 1, 2) = Hoja1.Cells(i, 5).Value
                .List(.ListCount - 1, 3) = Hoja1.Cells(i, 11).Value
            End If
            i = i + 1
        Loop
    End With
End Sub
Respuesta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas