Sobre listindex

07/11/2008 - 06:00 por BADDOG | Informe spam
Buenas otra vez comunidad:

Mi problema es el siguiente. Tengo un Combobox el cual recoge los datos de
un rango llamado MESES de aproximadamente 6 años de longitud (x12 meses 96
registros).

El combobox visualiza la lista perfectamente, pero mi interés está en el
índice, el cual me relaciona numéricamante a otra lista que tiene los días
totales de ese mes en concreto.

Mi problema que en el evento change del combobox, me recoge perfectamente el
índice, pero al salir siempre el indice es 0, con lo cual no puedo saber qué
días tiene el mes en particular.

Por ejemplo en lista 17 (Enero 2010) que sumando uno a list daría 18. En H18
tendría el valor ya calculado de 31. siempre me escoge el valor 0.

Una ayuda por favor.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
07/11/2008 - 06:36 | Informe spam
hola, 'anonimo/a' !

1) si el listindex(17) -elemento # 18- corresponde a enero 2010
significa que el listindex(0) -elemento # 1- corresponde a agosto 2008 -???-

2) que tipo de datos recoge el combo (de su rango de origen) ?
datos de texto ?... datos-fecha-real ?... de otro tipo ? (algun ejemplo concreto ?)

3) cual es (como se forma o donde esta) "la otra lista" ? (la que tiene los dias totales de cada mes)

4) puedes exponer (al menos) la parte de codigo donde "pones" el listindex en algun lado ?
y/o si tienes otros codigos (p.e.) en el evento '_exit' del combo ?

si tienes mas "detalles" que no se hayan podido "ver" (desde este lado del mensaje)...
podrias comentarlos ?

saludos,
hector.

__ OP __
... un Combobox... recoge los datos de un rango llamado MESES
de aproximadamente 6 a#os de longitud (x12 meses 96 registros).
... mi interes esta en el indice, el cual me relaciona numericamante a otra lista que tiene los dias totales de ese mes en concreto.
Mi problema que en el evento change del combobox, me recoge perfectamente el indice
pero al salir siempre el indice es 0, con lo cual no puedo saber que dias tiene el mes en particular.
Por ejemplo en lista 17 (Enero 2010) que sumando uno a list daria 18.
En H18 tendria el valor ya calculado de 31. siempre me escoge el valor 0.
Respuesta Responder a este mensaje
#2 ISRAELDESOUZA
07/11/2008 - 13:16 | Informe spam
"BADDOG" escreveu na notícia da
mensagem:
Buenas otra vez comunidad:

Mi problema es el siguiente. Tengo un Combobox el cual recoge los datos de
un rango llamado MESES de aproximadamente 6 años de longitud (x12 meses 96
registros).

El combobox visualiza la lista perfectamente, pero mi interés está en el
índice, el cual me relaciona numéricamante a otra lista que tiene los días
totales de ese mes en concreto.

Mi problema que en el evento change del combobox, me recoge perfectamente
el
índice, pero al salir siempre el indice es 0, con lo cual no puedo saber
qué
días tiene el mes en particular.

Por ejemplo en lista 17 (Enero 2010) que sumando uno a list daría 18. En
H18
tendría el valor ya calculado de 31. siempre me escoge el valor 0.

Una ayuda por favor.

Respuesta Responder a este mensaje
#3 BADDOG
07/11/2008 - 16:15 | Informe spam
Buenas otra vez:
Contesto alguna de vuestras preguntas.

La hoja de calculo tiene 3 hojas. en la primera hay un documento y no tiene
problema. la segunda estará oculta (ahora no, ya que la estoy Haciendo 8) ).
En ésta desde H1 hasta H96 hay un rango llamado MESES que empieza en 01 enero
2008 y finaliza en 01 Diciembre 2014. Es una formato de fecha (ene-08).
A continuación en la columna siguiente (Columna I) y con una fórmula he
preparado los días que ese mes ha tenido o tendrá realizando simplemente
restando (H2-H1; el resultado de la primera es 31 y se guarda en I1, así
sucesivamente hasta I96).

En un formulario de vba, cuando despliego la lista de combobox, los datos a
recoger salen del rango Meses. Así para saber los días que tiene enero 2008
(cogidos de H1), necesito saber que el LISTINDEX es 0. Ésto es así porque
enero 08 está en H1. Con listindex 0, le sumo 1 y miro en I(listindex+1), o
sea I1, tengo 31 que es el dato que quiero conseguir en el formulario.

Hasta aquí bien, ya que el evento change del combobox lo realiza bien, pero
una vez que salgo del combobox, éste por alguna cosa que no consigo saber
siempre deja un valor 0 por lo que el valor de los días que yo quiero siempre
me queda en ese primer valor. Es igual que seleccione Agosto 2011, que una
vez que salga el valor que se carga en (por ejemplo textbox1 con I30, valor
de días de agosto 2011 30) es 31 que es enero 2008.

espero haber podido responder a vuestras preguntas. Esperando que podáis
ayudarme. un saludo
Respuesta Responder a este mensaje
#4 Cacho
07/11/2008 - 18:09 | Informe spam
Hola! BADDOG. Quizás tengas que dividir tu problema en dos:

a) Si lo que quieres es saber la cantidad de días del mes seleccionado, no
necesitas una columna auxiliar.
Simplemente incorpora al evento "Change()" del Combo lo siguiente:


MsgBox Day(DateSerial(Year(ComboBox1), 1 + Month(ComboBox1), 0))

Naturalmente: tu pondrás ese dato en una celda, por lo que comentas.


b) En cuanto al tema que no se te seleccionan datos de la columna I, no
puedo interpretar -por tu descripción- que es lo que ocurre.


Saludos, Cacho.
Respuesta Responder a este mensaje
#5 Cacho
07/11/2008 - 18:20 | Informe spam
Hay varias... Pero dos de las razones por la que no entiendo lo que describes
son:

1º) Dices tener 96 datos: desde Ene-2008 hasta Dic-2014: si son 96 meses,
deberías tener hasta Dic-2015.

2º) Dices que tus datos ocupan el rango [H1:H96]. Por lo tanto, cuando
seleccionas el mes Ene-2010, éste es el dato "25" de la lista y no el dato
"18" como afirmas.

En fin: trata de ajustar esos detalles.
Saludos, Cacho.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida