you almost had it!!!
you only have to change:
Sheets(i).Name = arr(i, 1)
to
Sheets(*i + 1*).Name = arr(i, 1)
as you did with the previous line...
just a note... you don't have to activate the sheet to change its
name...
at least, that is what happens with my office (2003)....
:)
Paul Sheppard Wrote:
I have a Workbook with 13 sheets, the first is a Control sheet. On the
control sheet I have a button (Macro details below) which when clicked
should rename the other 12 sheets according to data in cells A4:A15
Sub namesheets_as_per_list_on_worksheet()
Dim arr As Variant
arr = Range("a4:a15").Value
For i = LBound(arr) To UBound(arr)
Sheets(i + 1).Activate
Sheets(i).Name = arr(i, 1)
Next i
End Sub
The conrtrol sheet is the first sheet in the workbook, and gets renamed
when I run the macro, whilst sheet 13 does not change. What changes does
the Macro require so that it renames sheets 2-13, ignoring sheet 1 the
control sheet
--
T-容x
------------------------------------------------------------------------
T-容x's Profile:
http://www.excelforum.com/member.php...o&userid=26572
View this thread:
http://www.excelforum.com/showthread...hreadid=398905