View Single Post
  #7   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein \(MVP - VB\)[_1509_] Rick Rothstein \(MVP - VB\)[_1509_] is offline
external usenet poster
 
Posts: 1
Default Calculation With A Macro

If I understand you correctly, you want the reference for $D$26 to always be
that cell on Sheet1, no matter what sheet you are copying the formula to. If
that is correct, this should accomplish that for you...

Sub CopyCell()
Dim X As Long
Dim Sh As Variant
For Each Sh In Array("Sheet1", "Sheet2", "Sheet3")
For X = 7 To 501
Worksheets(Sh).Range("B" & CStr(X)).Formula = _
"=SUM(E" & CStr(X) & "/Sheet1!$D$26)*52"
Next
Next
End Sub



"Bob" wrote in message
...
Thanks Rick - my only issue is that my $D$26 reference resides on a
different
sheet - named "sheet1". When I ran the macro it pulled the D26 from the
sheet
I was running it from. How can I change the cell reference?
--
Bob


"Rick Rothstein (MVP - VB)" wrote:

This macro allows you to specify the worksheets (in the Array function
call)
and copy the formula to the required cells on each sheet...

Sub CopyCell()
Dim X As Long
Dim Sh As Variant
For Each Sh In Array("Sheet1", "Sheet2", "Sheet3")
For X = 7 To 501
Worksheets(Sh).Range("B" & CStr(X)).Formula = _
"=SUM(E" & CStr(X) & "/" & Sh & "!$D$26)*52"
Next
Next
End Sub


Rick



"Bob" wrote in message
...
In cell V7 of my worksheet I have the following formula:

=SUM(E7/Sheet1!$D$26)*52

What I would like to do is copy this formula down to line V501 without
having to copy and paste. I also have this same formula in 7 other
worksheets
so I would also like to do the same in those as well. I am assuming I
will
need some kind of loop in order to do it in the one sheet as well as
the
others but do not know how to execute it.

Thanks.

Bob



Thanks.


--
Bob