Visual Basic para Aplicaciones - Repetir 24 veces cada valor de una columna en una nueva desde VBA

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 3
Ha aumentado 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Repetir 24 veces cada valor de una columna en una nueva desde VBA

Publicado por Karla (2 intervenciones) el 02/10/2019 15:49:00
Espero que alguien me pueda ayudar con esta duda por favor. Muchas gracias.

Tengo un vector con 365 valores (co1(k,1)) que me resulta al leer el número máximo cada 24 valores de una columna de excel (vector co(j,1) de 8760 valores). Ahora necesito un nuevo vector que me repita 24 veces cada número de esos 365 y me imprima en una nueva columna de excel. Ese vector sería (co2(j,1)) y tendría 8760 valores. Adjunto imagen de una posible solución que me han dado.

Adjunto también el archivo de excel y la macro de VBA que se ejecuta desde el procedimiento main.

En el procedimiento programa en verde como comentario está la parte que quisiera que se ejecute y que no me resulta.

Necesito moverme dentro del vector para obtener el resultado y no leyendo las celdas que están en excel (p. ejemplo con cells.). Por favor.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de MIGUEL
Val: 424
Bronce
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Repetir 24 veces cada valor de una columna en una nueva desde VBA

Publicado por MIGUEL (121 intervenciones) el 02/10/2019 19:51:55
Hola Karla

Unas Observaciones:

1° Tu base de datos no repite los días 24 veces como me imagino debería de ser, hay días que se repiten mas y otros menos de 24
2° Como al parecer es un problema que te dejaron en la escuela no creo que sea correcto darte la respuesta, sin embargo, te puedo decir que en el procedimiento "programa" te hace falta usar una variable y una condicional para que no te produzca un desbordamiento la variable "p", no se si esa sea la única forma en que lo tienes que hacer, pregunto porque se puede hacer de una forma mas fácil(fácil de entender el código) aunque con un poco mas de lineas de código y aun así tendrás que usar la variable que te falta usar en tu proyecto mas la condicional, y te aconsejo que hagas una cosa a la vez, primero ve que es lo que necesitas para que el array "co2" se empiece a llenar y ya veras como todo te empieza a ser mas claro

Saludos y Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha aumentado 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Repetir 24 veces cada valor de una columna en una nueva desde VBA

Publicado por Karla (2 intervenciones) el 03/10/2019 10:18:01
Cada día está desde las 00:00 horas hasta las 23:00 horas. Al final son 8760 valores correspondientes a las horas del año. Me puedes decir en que parte no se repite cada 24 horas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de MIGUEL
Val: 424
Bronce
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Repetir 24 veces cada valor de una columna en una nueva desde VBA

Publicado por MIGUEL (121 intervenciones) el 03/10/2019 19:44:31
Claro

el dia 29/10/2017 se repite 25 veces aquí duplicas las 02:00 hras
el dia 26/03/2017 se repite solo 23 veces aquí te falta las 02:00 hras

Son los que me di cuenta, si hay mas, no lo se.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar