Thread
:
Copy Unknown Number of Sheets
View Single Post
#
9
Posted to microsoft.public.excel.programming
Don Guillett
external usenet poster
Posts: 10,124
Copy Unknown Number of Sheets
Be nice Tom.
As we are all too aware, sometimes OPs don't tell us everything....
--
Don Guillett
SalesAid Software
"Tom Ogilvy" wrote in message
...
Just to continue such a stimulating discussion (and I have nothing
pressing
at the moment), to me, that would seem less likely since no error handler
is
shown and the OP stated no error is raised. Excel VBA has never been know
to
be stingy with popping up a subscript out of range error <g.
Nonetheless, regardless of having espoused such wisdom in response to your
eloquent suggestion, it costs little to check.
--
Regards,
Tom Ogilvy
"Don Guillett" wrote:
or
Input has a space before or after.
--
Don Guillett
SalesAid Software
"Tom Ogilvy" wrote in message
...
In contrast, the corrected code I posted ran perfectly for me.
try creating a new blank workbook. Name the first sheet Input.
Put your code in a general module (insert=Module).
then run it with this workbook the activeworkbook.
It should work.
If it does, then the question is why it doesn't work for in your
original
workbook.
My guess would be that you have a user defined function written in VBA
in
the INPUT sheet that raises an error when you copy the sheet and
causes
your
macro execution to halt.
--
Regards,
Tom Ogilvy
"Anice" wrote:
I tried both of those, and the program is still stopping after:
Sheets("Input").Copy after:=Sheets("Input")
It doesn't go to End Sub or give me an error. The program just stops.
Any
other suggestions?? Thank you for your advice
"Don Guillett" wrote:
would this be easier?
Sub addsheets()
On Error GoTo bye
For i = InputBox("Number needed?") To 1 Step -1
Sheets("Input").Copy after:=Sheets("Input")
ActiveSheet.Name = "Input" & i
Next i
bye:
End Sub
--
Don Guillett
SalesAid Software
"Anice" wrote in message
...
I have a Macro that prompts the user for a number. The program
should
then
insert a copy of an existing page that number of times. The
program
prompts
the user, but then stops before inserting any new pages. Here is
what I
have
right now. Thank you for all your help!!
Sub CopySheets()
Dim PhaseNum As Double
Dim Count As Double
Dim MinVal As Double
Dim MaxVal As Double
Dim Msg As String
Dim UserEntry As String
MinVal = 1
MaxVal = 20
Msg = "Enter the Number of Program Phases"
Msg = Msg + vbNewLine
Msg = Msg + "Between 1 and 20"
Do
UserEntry = InputBox(Msg)
If UserEntry = "" Then Exit Sub
If IsNumeric(UserEntry) Then
PhaseNum = Val(UserEntry)
If PhaseNum <= MaxVal And PhaseNum = MinVal Then Exit
Do
End If
Loop
For Count = 1 To PhaseNum
Sheets("INPUT").Select
Sheets("INPUT").Copy After:=Sheets("INPUT")
Next Count
End Sub
Reply With Quote
Don Guillett
View Public Profile
Find all posts by Don Guillett