Help with VB code - average of numbers over specified weeks

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a spreadsheet that has weeks 1-9 (columns C-K). In each week is 3
numbers (rows 4-6). Those numbers get added together to get a total for that
week (row 7).
I need help with creating the VB script that when run adds the totals
together and gives an average for a specified week range.

Example: user clicks a button and a dialog box comes up where they enter in
the week range in textboxes. So textbox1.text could be 3 and textbox2.text
could be 7. Then the user clicks an ok button and the script runs. The script
would add together the totals for week 3,4,5,6,7 (in row 7) then divide that
sum by: number of weeks x 3 (in this case 15)
Another example: user enters in week 6 to week 9, they click ok and the
script runs. It would add the totals for week 6,7,8,9 then divide that sum
by: number of weeks x 3 (in this case 12)

The week range will be different all the time, depending on what specified
week average I need at that time. Can anyone help me with this?

Thanks for any help you can provide,
Phil
 
Sub myAVerage()
Dim rng As Range
Dim iStart, iEnd

Set rng = Range("C7")
iStart = 3
iEnd = 7

Do
iStart = InputBox("Input first column (1-7)")
Loop Until iStart = "" Or (iStart > 0 And iStart < 8)

If iStart <> "" Then
Do
iEnd = InputBox("Input first column (1-7)")
Loop Until iEnd = "" Or (iEnd > 0 And iEnd < 8)

myval = Application.Sum(rng(1, CLng(iStart)).Resize(, iEnd - iStart
+ 1)) / ((iEnd - iStart + 1) * 3)

MsgBox myval
End If

End Sub


--

HTH

Bob Phillips

(remove nothere from the email address if mailing direct)
 
Thanks, Bob. Man you guys are good. I've taught myself some VB, but when it's
way over my head I turn to the experts. Thanks alot, I'll give it a try.

Phil
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top