Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / Programming / February 2006

Tip: Looking for answers? Try searching our database.

Adding a coulmn total using a range name and sheet name

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
burl_rfc_h - 18 Feb 2006 20:14 GMT
In the code below I created a dynamic range, the range name is based on
the contents in cell 2 of a column (in this case text) and the sheet
name. How can I then place a formula into the 1st cell of the column
that totals up the contents of the dynamic range, using the dynmaic
range name.

Sub Named_Range()

Dim s1 As String
Dim s2 As String
Dim sName As String
s1 = ActiveSheet.Name
s2 = "'" & s1 & "'"

   sName = Cells(2, ActiveCell.Column).Value
   ThisWorkbook.Names.Add Name:=sName & "_" & s1, _
       RefersTo:="=OFFSET(" & s2 & "!" & Cells(2, _
           ActiveCell.Column).Address & _
            ",1,0,COUNT(" & s2 & "!" & _
               ActiveCell.EntireColumn.Address & ")-1,1)"

Debug.Print sName & "_" & s1, ThisWorkbook.Names( _
sName & "_" & s1).RefersTo

End Sub

Thanks
Burl
Don Guillett - 18 Feb 2006 21:54 GMT
Does this help?

Sub makerangeandsumattop()
Range(Cells(2, "h"), Cells(5, "h")).Name = "burl"
Cells(1, "H") = Application.Sum(Range("burl"))
'or to leave the formula there
'Cells(1, "H").Formula = "=Sum(burl)"
End Sub

Signature

Don Guillett
SalesAid Software
dguillett1@austin.rr.com

> In the code below I created a dynamic range, the range name is based on
> the contents in cell 2 of a column (in this case text) and the sheet
[quoted text clipped - 24 lines]
> Thanks
> Burl
Jim Cone - 18 Feb 2006 21:56 GMT
Burl,
Am using CountA instead of Count.
Also, using EntireColumn creates a circular reference.
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware/

'--------------------------
Sub Named_Range()
Dim s1 As String
Dim s2 As String
Dim sName As String
s1 = ActiveSheet.Name
s2 = "'" & s1 & "'"

sName = Cells(2, ActiveCell.Column).Value
ThisWorkbook.Names.Add Name:=sName & "_" & s1, _
RefersTo:="=OFFSET(" & s2 & "!" & Cells(2, ActiveCell.Column).Address & _
   ",1,0,COUNTA(" & s2 & "!" & Range(Cells(2, ActiveCell.Column), _
   Cells(Rows.Count, ActiveCell.Column)).Address & ")-1,1)"

'This adds the formula...
Cells(1, ActiveCell.Column).Formula = "=Sum(" & sName & "_" & s1 & ")"

Debug.Print sName & "_" & s1, ThisWorkbook.Names( _
sName & "_" & s1).RefersTo
End Sub
'-------------------

"burl_rfc_h" <milliela@connecttime.net> wrote in message
In the code below I created a dynamic range, the range name is based on
the contents in cell 2 of a column (in this case text) and the sheet
name. How can I then place a formula into the 1st cell of the column
that totals up the contents of the dynamic range, using the dynmaic
range name.

Sub Named_Range()
Dim s1 As String
Dim s2 As String
Dim sName As String
s1 = ActiveSheet.Name
s2 = "'" & s1 & "'"
   sName = Cells(2, ActiveCell.Column).Value
   ThisWorkbook.Names.Add Name:=sName & "_" & s1, _
       RefersTo:="=OFFSET(" & s2 & "!" & Cells(2, _
           ActiveCell.Column).Address & _
            ",1,0,COUNT(" & s2 & "!" & _
               ActiveCell.EntireColumn.Address & ")-1,1)"
Debug.Print sName & "_" & s1, ThisWorkbook.Names( _
sName & "_" & s1).RefersTo
End Sub
Thanks
Burl
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.