seleccion de datos en Listbox para editar

2 envíos / 0 nuevos
Último envío
Hram
Imagen de Hram
Offline
última acción: Hace 5 años 2 meses
alta: 23/02/2019 - 12:35
Puntos: 35
seleccion de datos en Listbox para editar

Tengo una tabla con 18 columnas, agrupo esa información en un listbox, todo bien, puedo manipularlo filtrarlo y seleccionar el registro deseado, el problema surge al momento de seleccionar con Data_OT_Click solo me deja captar hasta 9 registros y son 18, es aquí donde quede trabado..
Muy agradecido si me pudiesen facilitar las herramientas pistas para seguir adelante con mi proyecto,

Gracias de antemano,

Heberto Ramos

Enlace del archivo:

https://www.dropbox.com/s/vxygu1fedfj53cr/MODELO%20PARA%20PRESENTACION%20CLASE.xlsm?dl=0 

AdjuntoTamaño
File modelo_para_presentacion_clase.xlsm1.21 MB

Etiquetas: 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 1 semana 2 días
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Las 10 columnas es una

Las 10 columnas es una limitación del control de lista cuando se añaden elementos con AddItem

Es una limitación de Excel.

Tu problema está al cargar la lista con datos en el procedimiento OT_CHANGE, no al consultar los datos existentes

 

Para conseguir cargar en una lista más columnas se puede hacer mediante una matriz, un array, en el que almacenes tus datos provisionalmente. luego , con el método .List o .Column puedes asignar toda la matriz de golpe a la lista y respetará las dimensiones. (lo de List o Column depende de si quieres transponer filas o columnas)

Así que en tu caso, podría ser algo así:

cuando encuentro un valor que pasar a la lista, lo copio en mi matriz auxiliar

n = n + 1

'redimensiono la matriz con un elemento más

ReDim Preserve mimatrizauxiliar(1 To numerocolumnas, 1 To n)

'hago un bucle para leer las 18 columnas (numerodecolumnas es una constante donde guardo este número)

For contador = 1 To numerocolumnas

mimatrizauxiliar(contador, n) = .Cells(i, contador).Value

Next

 

Por último, asigno toda la matriz a la lista con una única instrucción.

DATA_OT.Column = mimatrizauxiliar

 

Adjunto ejemplo modificado

 

AdjuntoTamaño
File modelo_para_presentacion_clase.xlsm225.77 KB

 

------
Ya sé Excel, pero necesito más.