
Ciclo anidado
Publicado por Pablo (3 intervenciones) el 20/04/2017 01:15:37
Hola a todos
Soy nuevo programando, me agrada y me parece útil aprender a programar. Sin embargo como todo principiante se me presentan problemas. Por ejemplo tengo una planilla en EXCEL, utilizando la parte de programación (no estoy seguro si se llama VISUAL o Macros), trato de que mi algoritmo lea unos datos de una planilla y calcule los promedios de las temperaturas de un año, pero están están divididas por estaciones(verano, invierno, etc), es decir tenemos 4 promedios, uno por cada estación. Dispongo de 3 años en datos, es decir tengo 3 años de estaciones.

Entonces usando un ciclo for pensaba que leyera los datos de esta forma.
sin embargo solo resulta para el ciclo interior, para poder obtener el promedio de los promedios de los años nos que hacer.
Espero les agrade, probablemente sea muy sencillo pero aun no se me ocurre.
Soy nuevo programando, me agrada y me parece útil aprender a programar. Sin embargo como todo principiante se me presentan problemas. Por ejemplo tengo una planilla en EXCEL, utilizando la parte de programación (no estoy seguro si se llama VISUAL o Macros), trato de que mi algoritmo lea unos datos de una planilla y calcule los promedios de las temperaturas de un año, pero están están divididas por estaciones(verano, invierno, etc), es decir tenemos 4 promedios, uno por cada estación. Dispongo de 3 años en datos, es decir tengo 3 años de estaciones.

Entonces usando un ciclo for pensaba que leyera los datos de esta forma.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub prueba1()
sumaa = 0
l = 0
For i = 4 To 15
dato = Cells(i, 3)
sumae = 0
k = 0
For j = 4 To 15 Step 4
dato = Cells(j, 3)
If dato > -50 And dato < 150 Then
sumae = sumae + dato
k = k + 1
End If
Next j
p = sumae / k
Cells(17, 4) = p
sumaa = p
l = l + 1
Next i
pt = sumaa / l
Cells(17, 5) = pt
End Sub
sin embargo solo resulta para el ciclo interior, para poder obtener el promedio de los promedios de los años nos que hacer.
Espero les agrade, probablemente sea muy sencillo pero aun no se me ocurre.
Valora esta pregunta


0