Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
I have this code,
Private Sub Worksheet_Calculate() Me.Name = Range("b36").Value End Sub that name the sheet tab based on cell B36. The problem is when I copy the sheet and I enter the same name in the duplicate sheet and the previous sheet I get an error. Is there a way to add a nuber at the end of the duplicate sheet. example: 1st sheet name = Round 2nd sheet name = square 3rd sheet name = round(2) all sheet have the same calculations. |
#2
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Try
'----------------- Private Sub Worksheet_Calculate() Dim strName Dim j j = 0 strName = Range("b36").Value For Each ws In Worksheets If (strName = ws.Name) Then j = 2 End If Next ws If j 0 Then strName = strName & "(" & j & ")" End If Me.Name = strName End Sub '----------------- This will name the sheet as round(2) if round already exists but will fail if round(2) exists. You need to expand it to test for this condition, take the highest number and add one to it... "Han" wrote: I have this code, Private Sub Worksheet_Calculate() Me.Name = Range("b36").Value End Sub that name the sheet tab based on cell B36. The problem is when I copy the sheet and I enter the same name in the duplicate sheet and the previous sheet I get an error. Is there a way to add a nuber at the end of the duplicate sheet. example: 1st sheet name = Round 2nd sheet name = square 3rd sheet name = round(2) all sheet have the same calculations. |
#3
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Code kinda works. Sometimes I copy the 1st sheet several times and give it
the same name because the same calcs are performed but for different scenerios. I don't know if i'm being clear enough. Here's another example that might clear things up. 1st sheet calcs volumn of a cylinder (sheet name = cylinder) 2nd sheet calcs volumn of cylinder of different height and radius (sheet name = cylinder (2) 3rd sheet calcs volumn of cylinder of yet different height and radius (sheet name = cylinder (3) "Sheeloo" wrote: Try '----------------- Private Sub Worksheet_Calculate() Dim strName Dim j j = 0 strName = Range("b36").Value For Each ws In Worksheets If (strName = ws.Name) Then j = 2 End If Next ws If j 0 Then strName = strName & "(" & j & ")" End If Me.Name = strName End Sub '----------------- This will name the sheet as round(2) if round already exists but will fail if round(2) exists. You need to expand it to test for this condition, take the highest number and add one to it... "Han" wrote: I have this code, Private Sub Worksheet_Calculate() Me.Name = Range("b36").Value End Sub that name the sheet tab based on cell B36. The problem is when I copy the sheet and I enter the same name in the duplicate sheet and the previous sheet I get an error. Is there a way to add a nuber at the end of the duplicate sheet. example: 1st sheet name = Round 2nd sheet name = square 3rd sheet name = round(2) all sheet have the same calculations. |
#4
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Your requirement was clear... that is why I said "You need to expand it to
test for this condition, take the highest number and add one to it... " "Han" wrote: Code kinda works. Sometimes I copy the 1st sheet several times and give it the same name because the same calcs are performed but for different scenerios. I don't know if i'm being clear enough. Here's another example that might clear things up. 1st sheet calcs volumn of a cylinder (sheet name = cylinder) 2nd sheet calcs volumn of cylinder of different height and radius (sheet name = cylinder (2) 3rd sheet calcs volumn of cylinder of yet different height and radius (sheet name = cylinder (3) "Sheeloo" wrote: Try '----------------- Private Sub Worksheet_Calculate() Dim strName Dim j j = 0 strName = Range("b36").Value For Each ws In Worksheets If (strName = ws.Name) Then j = 2 End If Next ws If j 0 Then strName = strName & "(" & j & ")" End If Me.Name = strName End Sub '----------------- This will name the sheet as round(2) if round already exists but will fail if round(2) exists. You need to expand it to test for this condition, take the highest number and add one to it... "Han" wrote: I have this code, Private Sub Worksheet_Calculate() Me.Name = Range("b36").Value End Sub that name the sheet tab based on cell B36. The problem is when I copy the sheet and I enter the same name in the duplicate sheet and the previous sheet I get an error. Is there a way to add a nuber at the end of the duplicate sheet. example: 1st sheet name = Round 2nd sheet name = square 3rd sheet name = round(2) all sheet have the same calculations. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Duplicate sheet, autonumber sheet, record data on another sheet | Excel Worksheet Functions | |||
lookup single value in one sheet, return multiple results from theother sheet | Excel Worksheet Functions | |||
"='sheet 1'!D4" auto fill sheet to sheet ='sheet 2'!D4 | Excel Worksheet Functions | |||
How do I select price from sheet.b where sheet.a part no = sheet.b | Excel Worksheet Functions | |||
relative sheet references ala sheet(-1)!B11 so I can copy a sheet. | Excel Discussion (Misc queries) |