View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Gord Dibben Gord Dibben is offline
external usenet poster
 
Posts: 22,906
Default Rename Worksheet From Cell Data

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

On Sat, 20 Feb 2010 08:19:02 -0800, navel151
wrote:

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?

"Gary''s Student" wrote:

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

--
Gary''s Student - gsnu201001


"navel151" wrote:

Is there a way to rename a worksheet based on a cell in the worksheet?