Numero de registros de un listbox de 3mil registros

Tengo un userform con un listbox donde filtro una base de datos de excel mediante un combobox (lista desplegable) y un textbox (escribiendo manualmente lo que quiero filtrar). El codigo me funciona muy bien, solo que tengo un problema, el listbox solo me reconoce 558 registros y yo tengo cerca de 2 mil...

No se si el listbox tenga un limite de registros o tenga algun error en el codigo, por lo qu solicito su ayuda... Ademas en la untima columna tengo registrada la hora, pero en el listbox me aparecen otros numeros, quisiera tambien que me apareciera la hora tal cal la tengo en la base de datos

Anexo el codigo del combobox:

Private Sub CmbFletero_Change()

Application.ScreenUpdating = False
Sheets("Registros").Select
Range("E2").Select
LBoxRegistros.Clear

While ActiveCell.Value <> ""
m = InStr(1, UCase(ActiveCell.Value), UCase(CmbFletero.Text))

If m > 0 Then
LBoxRegistros.ColumnCount = 9
LBoxRegistros.AddItem
ActiveCell.Offset(0, -4).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 0) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 1) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 2) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 3) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 4) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 5) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 6) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 7) = ActiveCell.Value
ActiveCell.Offset(0, 1).Select
LBoxRegistros.List(LBoxRegistros.ListCount - 1, 8) = ActiveCell.Value
ActiveCell.Offset(0, -4).Select

End If

ActiveCell.Offset(1, 0).Select

Wend

'Sheets("FACTURA").Select
'Range("A1").Select

Application.ScreenUpdating = True
For X = 0 To LBoxRegistros.ListCount - 1
If LBoxRegistros.List(X, 0) <> "" Then
m = m + 1
End If
Next
LbTotal = m

End Sub

2 respuestas

Respuesta
1

Puede subir un ejemplo de su archivo (datos ficticios) para poder ayudarle

Gracias, logré hacer que me cargará los datos el listbox, solo quite registros que no ocupaba y no me había dado cuenta... Ahora Solo me. Falta resolver que en la columna 9 donde tengo registrada la hora, me aparezca con el formato que lo tengo en la hoja de Excel y no los números que me aparecen... Espero me puedas ayudar

Claro que si, nada más si puede subir una imagen del dato y también la imagen del formato en que lo tiene en excel

Hola,he intentado subir una imagen de mi archivo pero no he podido

Puede enviarlo a mi correo [email protected]

Respuesta
1

En este sitio comentan justamente un caso como el tuyo:

https://www.lawebdelprogramador.com/foros/Visual-Basic/717850-CAPACIDAD-LISTBOX.html 

Como verás depende del contenido de tu listbox (cuántas columnas) y otros aspectos de tu procesador, memoria, etc.

Comparto la respuesta allí dada de la imposibilidad de mirar un listbox con tantos registros. Seguramente podrás filtrar algo más.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas