I have a created a variable with a loop, how do I find average
On 11 Jul., 02:39, wrote:
that was defintiely helpful, how would you change it if you added a
second variable. look below at the example. it is incorrectly taking
scores from previous weeks. is there a way to clear the variable, once
it is captured
Sub rndgenandaver()
Dim score, t, lastt, averagescore, n, numberofweeks
t = 1
lastt = 16
n = 1
numberofweeks = 16
ReDim score(lastt, numberofweeks), averagescore(numberofweeks)
n = 1
For n = 1 To numberofweeks
t = 1
For t = 1 To lastt
If t 0 Then score(t, n) = Rnd()
Worksheets("Sheet1").Cells(t, n) = score(t, n)
Next t
averagescore(n) = Application.Average(score)
Worksheets("Sheet1").Cells(112, n) = averagescore(n)
Next n
End Sub
Hi
You don't need a two-dimensional array. Just re-use a one dimensional
array. Try this:
Sub rndgenandaver()
Dim Score()
Dim LastT As Integer
Dim AverageScore()
Dim NumberOfWeeks As Integer
Dim t As Integer
Dim n As Integer
LastT = 16
NumberOfWeeks = 16
ReDim Score(LastT), AverageScore(NumberOfWeeks)
For n = 1 To NumberOfWeeks
For t = 1 To LastT
Score(t) = Rnd()
Worksheets("Sheet1").Cells(t, n) = Score(t)
Next
AverageScore(n) = Application.Average(Score)
Worksheets("Sheet1").Cells(112, n) = AverageScore(n)
Next
End Sub
Best regards,
Per
|