Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   Problema propiedad List del Combobox (http://www.forosdelweb.com/f69/problema-propiedad-list-del-combobox-584081/)

Rupers 07/05/2008 19:09

Problema propiedad List del Combobox
 
Hola amigos de forosdelWeb:
El siguiente código,
For i = 1 To 10
ActiveSheet.Cells(fila, i + 2) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))
Players.List(Players.ListIndex, i) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))

Next
lo que hace es agregar en unas celdas el valor que tienen unos controles cuyos nombres son "resultado1", "resultado2", hasta "resultado10":
La primer lína despues del for no me da problema, el error surge en la siguiente que trata de cargar en un combobox llamado Players los valores que contienen mis controles, al parecer no tiene problema cuando el índice llega hasta 9, pero cuando el índice i es 10 me da el siguiente error
"Error en tiempo de Ejecución '103'
No se puede configurar el valor de la propiedad 'List' - Valor de Propiedad No válido"


Gracias, Rubén

David 08/05/2008 12:46

Re: Problema propiedad List del Combobox
 
¿Cuántas columnas tienes en tu ComboBox? Deberían ser 10

Avellaneda 08/05/2008 12:54

Re: Problema propiedad List del Combobox
 
¿10 columnas en un ComboBox?

¿No serán 10 filas?

David 08/05/2008 12:56

Re: Problema propiedad List del Combobox
 
Cita:

Iniciado por Avellaneda (Mensaje 2395951)
¿10 columnas en un ComboBox?

¿No serán 10 filas?

Es el ComboBox de VBA, así que realmente pueden ser 10 columnas...
Saludos :-)

Avellaneda 08/05/2008 12:58

Re: Problema propiedad List del Combobox
 
Cita:

Iniciado por David el Grande (Mensaje 2395955)
Es el ComboBox de VBA, así que realmente pueden ser 10 columnas...
Saludos :-)

Correcto!
¿Pero realmente es lo que está preguntando?

David 08/05/2008 13:01

Re: Problema propiedad List del Combobox
 
Cita:

Iniciado por Avellaneda (Mensaje 2395962)
Correcto!
¿Pero realmente es lo que está preguntando?

No sé, me pareció que comprobar si había realmente 10 columnas podría ser una solución. Pues dice que al ejecutar el código 9 veces no da error, solo da error cuando ejecuta el código la décima vez...

Avellaneda 08/05/2008 13:16

Re: Problema propiedad List del Combobox
 
Cita:

Iniciado por David el Grande (Mensaje 2395968)
No sé, me pareció que comprobar si había realmente 10 columnas podría ser una solución. Pues dice que al ejecutar el código 9 veces no da error, solo da error cuando ejecuta el código la décima vez...


Yo tampoco lo sé (quizá no se explica bien o no conseguimos entenderlo) pero me parece que se está refiriendo a filas y no a columnas.

ActiveSheet.Cells(fila, i + 2) = ....

ahí está sumado filas en el bucle y no columnas

David 08/05/2008 13:27

Re: Problema propiedad List del Combobox
 
Cita:

Iniciado por Avellaneda (Mensaje 2396005)
Yo tampoco lo sé (quizá no se explica bien o no conseguimos entenderlo) pero me parece que se está refiriendo a filas y no a columnas.

ActiveSheet.Cells(fila, i + 2) = ....

ahí está sumado filas en el bucle y no columnas

Pero al agregar un Item al ListBox, está agregando a la columna:
Código:

Players.List(Players.ListIndex, I) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))
Según lo que yo entendí de su problema, el código debería ser así:
Código:


Players.List(Players.ListIndex, I - 1) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))

Pues el índice de la columna empieza con 0 y no con 1...
Bueno, espero que le ayude en algo...

Rupers 08/05/2008 21:21

Re: Problema propiedad List del Combobox
 
Muchas gracias por su colaboración (no esperaba tantos mensajes)
Efectivamente, lo que hago es :
For i = 1 To 10

1º) lleno una serie de celdas con los valores ingresados en un formulario, mediante el siguiente código

ActiveSheet.Cells(fila, i + 2) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))


2º) cargo mi combobox llamado Players con los mismos valores ingresados en el formulario

Players.Column(i, Players.ListIndex) = Val(CargaJugada.Controls("resultado" & Trim(Str(i))))

Next

El combobox que quiero utilizar tiene que tener tantas filas como celdas cargadas encuentre en mi hoja de excel, que lo hago recorriendo un rango de celdas, y que a su vez tenga 11 columnas es decir una matriz de (n x 11)
Bueno, debe ser que el máximo de la manera convencional de columnas es de 10 porque siempre me daba error, dado que como numera desde 0 y cuando intentaba acceder al numero 10 me daba error (el índice 10 es la columna 11 en verdad, no sé si me explico bien)

La solución que encontré es la siguiente, crear una matriz dinámica con de n elementos o filas por 11 columnas, es en el evento Initialize() del Form, agregué

Dim Players_Jugadas() As Variant

' luego redimensiono siendo k una variable que indica la cantidad de celdas que están cargadas

ReDim Players_Jugadas(k, 11)

' luego con la propiedad list() del combobox asigné la matriz creada

Players.List() = Players_Jugadas

Gracias a todos por ayudarme.


La zona horaria es GMT -6. Ahora son las 09:41.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.