Rename Worksheet From Cell Data

G

Gary''s Student

Running the tiny macro will set the tab name to the value in B9:

Sub rNmae()
ActiveSheet.Name = Range("B9").Value
End Sub

Macros are very easy to install and use:

1. ALT-F11 brings up the VBE window
2. ALT-I
ALT-M opens a fresh module
3. paste the stuff in and close the VBE window

If you save the workbook, the macro will be saved with it.

To remove the macro:

1. bring up the VBE window as above
2. clear the code out
3. close the VBE window

To use the macro from Excel:

1. ALT-F8
2. Select the macro
3. Touch RUN

To learn more about macros in general, see:

http://www.mvps.org/dmcritchie/excel/getstarted.htm
 
N

navel151

Great! Now, is there a way to run one macro that would work on multiple
worksheets so that they each get renamed to the value in B9 in that sheet?
 
G

Gord Dibben

Private Sub Worksheet_Change(ByVal Target As Range)
'autoname the worksheet Tab from value in A1
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Me.Range("A1")) Is Nothing Then Exit Sub
On Error GoTo CleanUp
Application.EnableEvents = False
With Target
If .Value <> "" Then
Me.Name = .Value
End If
End With
CleanUp:
Application.EnableEvents = True
End Sub

Right-click on the sheet tab and "View Code". Copy/paste the code into that
module.

Edit "A1" TO SUIT.

Alt + q to return to Excel.


Gord Dibben MS Excel MVP
 
G

Gord Dibben

Use the code I posted but change it slightly to make it run on all sheets.

Remove the code from the sheet module and place this revision into
Thisworkbook module.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'autoname the worksheet Tab from value in B9
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Me.Range("B9")) Is Nothing Then Exit Sub
On Error GoTo CleanUp
Application.EnableEvents = False
With Target
If .Value <> "" Then
Me.Name = .Value
End If
End With
CleanUp:
Application.EnableEvents = True
End Sub


Gord
 
N

navel151

Gord, how do I run this sub? When I put it in the ThisWorkbook module it
doesn't show up in the Maacro list - I would like to have a shortcut key to
run it.

Thx.
 
G

Gord Dibben

It is event code, not a macro to be run via a button or shortcut key.

The code runs on any sheet when you change the value in B9 manually.

If you want a macro to run from a shortcut key use the rNmae macro the other
responder posted.



Gord
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top