View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 6,953
Default Running code when a worksheet opens

Test it in a new workbook (with two hidden sheets) and a blank sheet named "1"

If it works there, then it must have something to do with the data on the
sheet being copied or something to do with recalculating.

--
Regards,
Tom Ogivly



"ReportSmith" wrote:

Sorry...I got it. I had accidentally placed the code in the General
Declarations section. But the locking up issue still exists after all of the
sheets have been copied. In other words, if I enter "9", 9 extra sheets
appear and then I'm locked up and can't work within any of the sheets.

"Tom Ogilvy" wrote:

go into the vbe and in the project explorer pick you project. Under you
project click on the ThisWorkbook entry and select view code. Place your
code there.

--
Regards,
Tom Ogilvy


"ReportSmith" wrote:

I have built some code asking the user how many worksheets he would like to
add to a workbook with 1 visible worksheet. It is attached to a button and I
now need to put that code in a property such as "On Open" (I'm better with
Access), so when the worksheet opens, the first question is "How many...".
I've read some of the other posts, but can't find the property/ies they refer
to.

So far, I have:
------------------------------------
Private Sub Worksheet_Open()
Dim NumSheets, x, y

y = Worksheets.Count
NumSheets = InputBox("How many sheets to add?")
If NumSheets = Empty Then
End
Else
For x = 1 To NumSheets
Sheets("1").Select
Sheets("1").Copy After:=Sheets(1)
y = y + 1
ActiveSheet.Name = y - 2
Next x
End If
End Sub
------------------------------------

The reason I have "y - 2" above is because I also have 2 hidden worksheets
(used for data validation). If not "Private Sub Worksheet_Open()", then
where?

Thanks in advance for any help.