Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 28
Default Worksheet naming

I had create a macro that create a copy of the
active sheets on another workbook.It works OK.
But I having problem with renaming the copied
sheet.
I have below simple code for renaming the copied
sheet :

With activesheet.
.Name = .Range ("A12").Value
.Save
End With

But if the sheet with that name already exist,it will
produce an error.How to trap that.I want the old
sheet whit that name is replaced with the new one.

Thank's in advance

Rgds,

Shiro


  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 471
Default Worksheet naming

You could do this a couple ways. One way would be to test for the existance
before you do the renaming. To do that:

Sub test()
Dim NameOfSheet As String
Dim NameToBe As String


On Error GoTo FoundItAlready
Let NameToBe = "Frogs"
NameOfSheet = ActiveSheet.Name
ActiveSheet.Name = NameToBe


GoTo SkipOver 'if you get to here, it works so don't execute the code below.

FoundItAlready:
Sheets(NameToBe).Select
ActiveSheet.Name = "SomethingElse"
Sheets(NameOfSheet).Select
ActiveSheet.Name = NameToBe


SkipOver:


End Sub

What the above code does is name the current sheet to "Frogs" but if the
sheet "Frogs" already exists, it names it "SomethingElse" and then names the
sheet you want to be "Frogs" to "Frogs". This is a one-time macro with no
loops and you'd have to build looping in and also create variables for the
name to change the old one to so that you don't then try to creat multiple
sheets with the name "SomethingElse" but I think you'll get the idea with
this. HTH. Let me know if you need additional help.


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5
Default Worksheet naming

If he wants to replace it i think the easiest way is simply to delete the old
one if it exists, so:
Dim OldName As String
Dim NewName As String
OldName = "This"
NewName = "Whatever"

If ActiveSheet.Name = NewName Then
ActiveSheet.Delete
Sheets(Oldname).Select
ActiveSheet.Name = NewName
Else
ActiveSheet.Name = NewName

Hope I didnt get anything wrong here but i think my idea is shorter anyways...

"Mike H." wrote:

You could do this a couple ways. One way would be to test for the existance
before you do the renaming. To do that:

Sub test()
Dim NameOfSheet As String
Dim NameToBe As String


On Error GoTo FoundItAlready
Let NameToBe = "Frogs"
NameOfSheet = ActiveSheet.Name
ActiveSheet.Name = NameToBe


GoTo SkipOver 'if you get to here, it works so don't execute the code below.

FoundItAlready:
Sheets(NameToBe).Select
ActiveSheet.Name = "SomethingElse"
Sheets(NameOfSheet).Select
ActiveSheet.Name = NameToBe


SkipOver:


End Sub

What the above code does is name the current sheet to "Frogs" but if the
sheet "Frogs" already exists, it names it "SomethingElse" and then names the
sheet you want to be "Frogs" to "Frogs". This is a one-time macro with no
loops and you'd have to build looping in and also create variables for the
name to change the old one to so that you don't then try to creat multiple
sheets with the name "SomethingElse" but I think you'll get the idea with
this. HTH. Let me know if you need additional help.


Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Worksheet naming Woodstock Excel Discussion (Misc queries) 3 January 20th 09 10:35 PM
Naming A Worksheet Charles A. Lackman Excel Programming 1 October 26th 06 09:06 PM
Naming worksheet Arne Hegefors Excel Programming 1 September 19th 06 10:38 AM
Naming Worksheet Denis New Users to Excel 2 September 13th 05 05:55 PM
Naming a worksheet help? pauldaddyadams Excel Worksheet Functions 1 August 9th 05 10:46 AM


All times are GMT +1. The time now is 01:07 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"