ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Renaming Visible Sheets Only (https://www.excelbanter.com/excel-programming/415994-renaming-visible-sheets-only.html)

WBTKbeezy

Renaming Visible Sheets Only
 
Hi, I am trying to rename only visible charts based on a range from a main
tab. Currently I was attempting to do something like the following:

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = range(indirect("Title" & i)).Value
End If
Next

The named range I want for each chart is housed on one main tab and are
named "Title1", €œTitle2" etc... and each number in the range name matches up
with the chart number (so for Chart 6 I would want renamed to the value in
range Title6). I see now the indirect function doesn't work, can anyone help
me make this work?

Thanks
K

Jim Thomlinson

Renaming Visible Sheets Only
 
You either need to spcify the sheet that contains the named range or use a
different approact to get to the named range...

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = worksheets("main").range("Title" & i).Value
End If
Next i

or

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = thisworkbook.names("Title" & i).Referestorange.value
End If
Next i



--
HTH...

Jim Thomlinson


"WBTKbeezy" wrote:

Hi, I am trying to rename only visible charts based on a range from a main
tab. Currently I was attempting to do something like the following:

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = range(indirect("Title" & i)).Value
End If
Next

The named range I want for each chart is housed on one main tab and are
named "Title1", €œTitle2" etc... and each number in the range name matches up
with the chart number (so for Chart 6 I would want renamed to the value in
range Title6). I see now the indirect function doesn't work, can anyone help
me make this work?

Thanks
K


WBTKbeezy

Renaming Visible Sheets Only
 
Thanks Jim, that was exactly what I needed!

"Jim Thomlinson" wrote:

You either need to spcify the sheet that contains the named range or use a
different approact to get to the named range...

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = worksheets("main").range("Title" & i).Value
End If
Next i

or

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = thisworkbook.names("Title" & i).Referestorange.value
End If
Next i



--
HTH...

Jim Thomlinson


"WBTKbeezy" wrote:

Hi, I am trying to rename only visible charts based on a range from a main
tab. Currently I was attempting to do something like the following:

For i = 1 To Charts.Count
If Charts(i).Visible = True Then
Charts(i).Name = range(indirect("Title" & i)).Value
End If
Next

The named range I want for each chart is housed on one main tab and are
named "Title1", €œTitle2" etc... and each number in the range name matches up
with the chart number (so for Chart 6 I would want renamed to the value in
range Title6). I see now the indirect function doesn't work, can anyone help
me make this work?

Thanks
K



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

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