ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Excel VBA - Calculating average problem (https://www.excelbanter.com/excel-programming/287511-excel-vba-calculating-average-problem.html)

Lena5il

Excel VBA - Calculating average problem
 
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want t
use a loop. But I don't know how to write this formula with a variabl
inside.

Help me, please,

Len

--
Message posted from http://www.ExcelForum.com


Patrick Molloy[_4_]

Excel VBA - Calculating average problem
 

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into each cell in the range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does not need to be the active
sheet....and I also set the formula to point to a different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il " wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want to
use a loop. But I don't know how to write this formula with a variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/




JMay

Excel VBA - Calculating average problem
 
Patrick:

I've been practicing on the example you gave the OP, but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be happening?
TIA,
JMay



"Patrick Molloy" wrote in message
...

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into each cell in the range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does not need to be the

active
sheet....and I also set the formula to point to a different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il " wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want to
use a loop. But I don't know how to write this formula with a variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/






J.E. McGimpsey

Excel VBA - Calculating average problem
 
Your formula syntax is incorrect. Try:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 = _
"=Average(Sheet1!R1C2:R10C2)"
End Sub

or

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").Formula = _
"=Average(Sheet1!B1:B10)"
End Sub



In article <15dMb.71115$hf1.15480@lakeread06,
"JMay" wrote:

've been practicing on the example you gave the OP, but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be happening?


Dave Peterson[_3_]

Excel VBA - Calculating average problem
 
I'm guessing that you really wanted:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 _
= "=Average(sheet1!R1C2:R10C2)"
End Sub


JMay wrote:

Patrick:

I've been practicing on the example you gave the OP, but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be happening?
TIA,
JMay

"Patrick Molloy" wrote in message
...

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into each cell in the range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does not need to be the

active
sheet....and I also set the formula to point to a different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il " wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want to
use a loop. But I don't know how to write this formula with a variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/




--

Dave Peterson


Lena5il[_3_]

Excel VBA - Calculating average problem
 
Thanks, all.

I wrote:
Worksheets(2).Cells(row, 2).Value =
WorksheetFunction.Average(Range(Worksheets(1).Cell s(3, col),
Worksheets(1).Cells(137, col)))

and it is working.

But how can I calculate the average and stdev of the array?

I saw in some references something like:

Div arr(1 To 10) As Double

avg = System.StDev(arr) or something like that, but it doesn't work.

What is the right form to do this?


Lena


---
Message posted from http://www.ExcelForum.com/


Patrick Molloy[_4_]

Excel VBA - Calculating average problem
 
Looks fine
make sure that you have a "sheet3" or a "sheet1"


--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"JMay" wrote in message
news:15dMb.71115$hf1.15480@lakeread06...
Patrick:

I've been practicing on the example you gave the OP, but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be happening?
TIA,
JMay



"Patrick Molloy" wrote in message
...

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into each cell in the

range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does not need to be the

active
sheet....and I also set the formula to point to a different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il " wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want to
use a loop. But I don't know how to write this formula with a variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/








JMay

Excel VBA - Calculating average problem
 
Look Again..
"=Sheet3!Average(RC3:RC137)"

s/b "=Average(Sheet3!RC3:RC137)"

Thanks To all
JMay


"Patrick Molloy" wrote in message
...
Looks fine
make sure that you have a "sheet3" or a "sheet1"


--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"JMay" wrote in message
news:15dMb.71115$hf1.15480@lakeread06...
Patrick:

I've been practicing on the example you gave the OP, but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be happening?
TIA,
JMay



"Patrick Molloy" wrote in message
...

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into each cell in the

range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does not need to be the

active
sheet....and I also set the formula to point to a different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il " wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average(Sheet1!C3:C137)"

But I need to calculate this for few columns and rows, hence I want

to
use a loop. But I don't know how to write this formula with a

variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/










patrick molloy

Excel VBA - Calculating average problem
 
that's as per your question & my answer, however, the
last question set th eaverage on an area rather than a
column or row , and I didn't see whythere was an error

Patrick

-----Original Message-----
Look Again..
"=Sheet3!Average(RC3:RC137)"

s/b "=Average(Sheet3!RC3:RC137)"

Thanks To all
JMay


"Patrick Molloy" wrote in message
...
Looks fine
make sure that you have a "sheet3" or a "sheet1"


--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"JMay" wrote in message
news:15dMb.71115$hf1.15480@lakeread06...
Patrick:

I've been practicing on the example you gave the OP,

but right now I'm
getting
a R/T error 1004 when running:

Sub PutMultiPartFormula()
Worksheets("Sheet3").Range("A1").FormulaR1C1 =
"=Sheet1!Average(R1C2:R10C2)"
End Sub

Can you offer assistance as to why this might be

happening?
TIA,
JMay



"Patrick Molloy" wrote in

message
...

Sub PutFormula()
Range("B3:B25").FormulaR1C1 = "=Average

(RC3:RC137)"
End Sub

Sub PutFormula2()
Worksheets("Sheet1").Range

("B3:B25").FormulaR1C1 =
"=Sheet3!Average(RC3:RC137)"
End Sub


This procedure places the appropriate formula into

each cell in the
range
B3:B25
No loop required.
The first simply uses the active sheet.
The second places th eformula on a sheet that does

not need to be the
active
sheet....and I also set the formula to point to a

different sheet



--
Patrick Molloy
Microsoft Excel MVP
----------------------------------
"Lena5il "

wrote in message
...
Hi all,

I need to calculate an average in VBA excel.
I know only this form of calculation:
Worksheets(2).Cells(3, 2).Value = "=Average

(Sheet1!C3:C137)"

But I need to calculate this for few columns and

rows, hence I want
to
use a loop. But I don't know how to write this

formula with a
variable
inside.

Help me, please,

Lena


---
Message posted from http://www.ExcelForum.com/









.



All times are GMT +1. The time now is 01:34 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com