ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Naming Ranges (https://www.excelbanter.com/excel-discussion-misc-queries/13063-naming-ranges.html)

Simon Shaw

Naming Ranges
 
Hi,

When I name a Range on Sheet1, then make a Copy of Sheet1 to say Sheet2,
then access the Define Names dialogbox, I can see the named Range listed
twice. One is noted as belonging specifically to Sheet2 and the other appears
without a sheet reference.

When assiging a name to a Range, can I specify that it belongs to a certain
sheet?

Also, how would I change this code to assign the sheet name aswell?

ActiveWorkbook.Names.Add Name:="myRange", RefersToR1C1:="=Sheet1!R1C1:R10C1"

I am trying to assign a the name 'Column_Header_Range' to each sheet in my
workbook and I want to do it through a macro

Thanks

Simon Shaw



thanks

Simon


Dave Peterson

If you include the sheet name in the name, then that name is local to that
sheet.

Manually, it would be like entering this:

sheet1!myName
in the "Names in workbook" box.

In code:

ActiveWorkbook.Names.Add Name:="Sheet1!myRange", _
RefersToR1C1:="=Sheet1!R1C1:R10C1"

Or maybe even easier to see:

Activesheet.names.add Name:="myRange", RefersToR1C1:="=R1C1:R10C1"

I kind of like this style:

With ActiveSheet
.Range("A1:A10").Name = "'" & .Name & "'!myRange"
End With

The single quotes aren't always required--but they don't harm anything.

And if you're working with names, do yourself a giant favor and get Jan Karel
Pieterse's (with Charles Williams and Matthew Henson) Name Manager

You can find it at:
NameManager.Zip from http://www.oaltd.co.uk/mvp

Simon Shaw wrote:

Hi,

When I name a Range on Sheet1, then make a Copy of Sheet1 to say Sheet2,
then access the Define Names dialogbox, I can see the named Range listed
twice. One is noted as belonging specifically to Sheet2 and the other appears
without a sheet reference.

When assiging a name to a Range, can I specify that it belongs to a certain
sheet?

Also, how would I change this code to assign the sheet name aswell?

ActiveWorkbook.Names.Add Name:="myRange", RefersToR1C1:="=Sheet1!R1C1:R10C1"

I am trying to assign a the name 'Column_Header_Range' to each sheet in my
workbook and I want to do it through a macro

Thanks

Simon Shaw

thanks

Simon


--

Dave Peterson


All times are GMT +1. The time now is 05:35 AM.

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