Visual Basic para Aplicaciones - problemas con una macro.

Life is soft - evento anual de software empresarial
 
Vista:

problemas con una macro.

Publicado por bekyna (44 intervenciones) el 18/08/2004 18:29:59
Estoy haciendo una macro para excel y tengo problemas con un siglo For, necesito sumar los valores de una columna, pero los datos que debo de sumar no son de forma consecutiva sino, empieza tomando el dato en la celda 2 y tiene que hacer un salto de 24 celdas tomar el valor y así sucesivamente, el ciclo se controla datos que el usuario mete, pueden ser 20 o 800. gracias por su apreciable ayuda.
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

RE:problemas con una macro.

Publicado por frany (36 intervenciones) el 19/08/2004 00:08:41
Y que codigo has usado actulamente, para ver donde puede estar el fallo y poder ayudarte?

Un saludo.
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

RE:problemas con una macro.

Publicado por frany (36 intervenciones) el 19/08/2004 01:05:25
Tengo un fallo pues no me suma a veces el utlimo :-( he de arreglar la salida del bucle do loop
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

RE:problemas con una macro.

Publicado por frany (36 intervenciones) el 19/08/2004 00:52:53
Hola de nuevo.
Yo lo haria de la siguiente dorma.
Nota he dado un incremento =3 cambia el valor de la variable incremento a 20 o ala valor que desees
Suerte.

Sub suma_incremento3()
Application.ScreenUpdating = False

fila = 1
Columna = 2
incremento = 3 '(ejemplo incremetno =3)si el incremento es distinto cambiar este valor 20 en tu caso
Dim n

'contar cuantos valores tiene la columna
Do
fila = fila + 1
valor = Cells(fila, Columna).Value
If valor = "" Then Exit Do
nvalores = nvalores + 1

Loop

fila = 2
Do Until fila >= nvalores

suma = suma + Cells(fila, Columna)
fila = fila + incremento

Loop

'da el valor de la suma en la fila siguiente a la ultima
Cells(nvalores + 2, Columna) = suma

End Sub
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

RE:problemas con una macro.

Publicado por frany (36 intervenciones) el 19/08/2004 15:37:45
Hola TRas revisar el codigo observo que la condicion de de salir del bucle la tienes que cambiar .
El codigo siguiente es es correcto.

Un saludo y espero te sirva

Sub suma_incremento3()
Application.ScreenUpdating = False

fila = 1
Columna = 2
incremento = 3 '(ejemplo incremetno =3)si el incremento es distinto cambiar este valor 20 en tu caso
Dim n

'contar cuantos valores tiene la columna
Do
fila = fila + 1
valor = Cells(fila, Columna).Value
If valor = "" Then Exit Do
nvalores = nvalores + 1

Loop

fila = 2
Do Until fila > nvalores + 1 ' ESTA ES LA EXPRESION CORRECTA

suma = suma + Cells(fila, Columna)
fila = fila + incremento

Loop

'da el valor de la suma en la fila siguiente a la ultima
Cells(nvalores + 2, Columna) = suma

End Sub
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