Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 48
Default auto copying Excel spreadsheets

Hi all

i think this is a glitch or maybe its a clipboard error i dont know but i
have a macro that creates worksheets based on a worksheet already in the pack
but when it reaches 24 copies created it stops and throws up an error. i
tried to create one manually but it does not allow me to create a new one
then. i close down the pack and re open it and the macro runs again with
another 24 sheets. am i missing something?

heres the macro


Sub updatevalues()
Dim sel, i, sheetnu As Integer
Dim check As Boolean

check = False
sel = Sheets("content").Range("a2")
sheetnu = 15
i = 3

Do Until check = True
If sel = 0 Then
check = True
Else
Sheets("2").Copy Befo=Sheets(sheetnu)
sheetnu = sheetnu + 1
ActiveSheet.Name = i
ActiveSheet.Range("B4") = i
ActiveSheet.Calculate
i = i + 1
sel = sel - 1
End If
Loop

End Sub

thank you


  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 897
Default auto copying Excel spreadsheets

Why are you using an intermediate variable in your Do Loop, when you
could just check the dependent variable directly?

sel = Sheets("content").Range("a2")
Do Until sel = 0
Sheets("2").Copy Befo=Sheets(sheetnu)
sheetnu = sheetnu + 1
ActiveSheet.Name = i
ActiveSheet.Range("B4") = i
ActiveSheet.Calculate
i = i + 1
sel = sel - 1
Loop


And what is the value in Sheets("content").Range("a2") when you first
start the code?

Also, you are declaring variables as Variant type unintentionally:

Dim sel, i, sheetnu As Integer

is transformed by VBA to

Dim sel As Variant
Dim i As Variant
Dim sheetnu As Integer

You can share the word "Dim", but not a declaration. Use "Dim sel As
Integer, i As Integer, sheetnu As Integer" instead.


--JP


On Sep 18, 2:56*pm, Rivers wrote:
Hi all

i think this is a glitch or maybe its a clipboard error i dont know but i
have a macro that creates worksheets based on a worksheet already in the pack
but when it reaches 24 copies created it stops and throws up an error. i
tried to create one manually but it does not allow me to create a new one
then. i close down the pack and re open it and the macro runs again with
another 24 sheets. am i missing something?

heres the macro

Sub updatevalues()
Dim sel, i, sheetnu As Integer
Dim check As Boolean

check = False
sel = Sheets("content").Range("a2")
sheetnu = 15
i = 3

Do Until check = True
* * * * If sel = 0 Then
* * * * * * check = True
* * * * Else
* * * * * * Sheets("2").Copy Befo=Sheets(sheetnu)
* * * * * * sheetnu = sheetnu + 1
* * * * * * ActiveSheet.Name = i
* * * * * * ActiveSheet.Range("B4") = i
* * * * * * ActiveSheet.Calculate
* * * * * * i = i + 1
* * * * * * sel = sel - 1
* * * * End If
Loop

End Sub

thank you


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 48
Default auto copying Excel spreadsheets

its actually a bug which i found in http://support.microsoft.com/?kbid=210684

basically it causes an error for copying anything over 20 programmatically

if i strip out the variables and just put it basic does anyone no a work
around

Sheets("2").Select
Do Until check = True
If sel = 0 Then
check = True
Else
Sheets("2").Copy After:=Sheets(sheetnu)
sheetnu = sheetnu + 1
ActiveSheet.Name = ii
ActiveSheet.Calculate
sel = sel - 1
i = i + 1
End If
Loop

"JP" wrote:

Why are you using an intermediate variable in your Do Loop, when you
could just check the dependent variable directly?

sel = Sheets("content").Range("a2")
Do Until sel = 0
Sheets("2").Copy Befo=Sheets(sheetnu)
sheetnu = sheetnu + 1
ActiveSheet.Name = i
ActiveSheet.Range("B4") = i
ActiveSheet.Calculate
i = i + 1
sel = sel - 1
Loop


And what is the value in Sheets("content").Range("a2") when you first
start the code?

Also, you are declaring variables as Variant type unintentionally:

Dim sel, i, sheetnu As Integer

is transformed by VBA to

Dim sel As Variant
Dim i As Variant
Dim sheetnu As Integer

You can share the word "Dim", but not a declaration. Use "Dim sel As
Integer, i As Integer, sheetnu As Integer" instead.


--JP


On Sep 18, 2:56 pm, Rivers wrote:
Hi all

i think this is a glitch or maybe its a clipboard error i dont know but i
have a macro that creates worksheets based on a worksheet already in the pack
but when it reaches 24 copies created it stops and throws up an error. i
tried to create one manually but it does not allow me to create a new one
then. i close down the pack and re open it and the macro runs again with
another 24 sheets. am i missing something?

heres the macro

Sub updatevalues()
Dim sel, i, sheetnu As Integer
Dim check As Boolean

check = False
sel = Sheets("content").Range("a2")
sheetnu = 15
i = 3

Do Until check = True
If sel = 0 Then
check = True
Else
Sheets("2").Copy Befo=Sheets(sheetnu)
sheetnu = sheetnu + 1
ActiveSheet.Name = i
ActiveSheet.Range("B4") = i
ActiveSheet.Calculate
i = i + 1
sel = sel - 1
End If
Loop

End Sub

thank you



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
Auto updating muiltiple spreadsheets in Excel 2007 iBob Excel Worksheet Functions 1 May 17th 10 10:23 PM
Auto Calculate Not Working in some Spreadsheets - Excel 2003 tmpotvin Excel Worksheet Functions 2 October 22nd 09 10:19 PM
copying excel spreadsheets Lisa Excel Discussion (Misc queries) 2 December 31st 06 01:56 AM
How offten do Excel spreadsheets auto save? K Christopher New Users to Excel 2 March 8th 06 03:14 PM
How to auto save Excel spreadsheets Cheri Excel Discussion (Misc queries) 1 January 28th 05 08:47 PM


All times are GMT +1. The time now is 09:37 AM.

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

About Us

"It's about Microsoft Excel"