Lorsque j'ex=E9cute un certain nombre de fois la=20
fonction copy pour worksheet (voir macro ci-dessous),=20
j'obtiens l'erreur suivante : La m=E9thode Copy de la=20
classe Worksheet a =E9chou=E9. Cette erreur emp=EAche ensuite=20
la duplication manuelle d'une feuille du classeur (qui=20
contient la macro) vers ce m=EAme classeur mais n'emp=EAche=20
pas la copie d'une feuille de ce m=EAme classeur vers un=20
autre classeur.
Merci pour l'aide
Lionel =20
Sub Macro()
Application.ScreenUpdating =3D False
For i =3D 1 To 300
Sheets(1).Copy Before:=3DSheets(1)
Application.DisplayAlerts =3D False
Sheets("Feuil1").Delete
Application.DisplayAlerts =3D True
Sheets(1).Name =3D "Feuil1"
Next i
Application.ScreenUpdating =3D True
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
LeSteph
Bonsoir, Cela ne plante pas en soi sur un tour mais ta macro ne semble pas avoir d'objectif: tu ajoute une copie de la même feuille que tu supprime 300 fois renomme le double??? D'autre part,a u bout de plusieurs tours va voir dans l'explorateur de projet ta feuil dite 1 porte le numéro combien? A la longue ça plante...! ..dépassement je présume...
leSteph
"Lio" a écrit dans le message de news:11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
Bonsoir,
Cela ne plante pas en soi sur un tour
mais ta macro
ne semble pas avoir d'objectif:
tu ajoute une copie de la même feuille que
tu supprime 300 fois renomme le double???
D'autre part,a u bout de plusieurs tours va voir dans l'explorateur de
projet
ta feuil dite 1 porte le numéro combien?
A la longue ça plante...! ..dépassement je présume...
leSteph
"Lio" <lionel.peyrichoux@wanadoo.fr> a écrit dans le message de
news:11fb01c4a26a$4a826870$3501280a@phx.gbl...
Bonjour
Lorsque j'exécute un certain nombre de fois la
fonction copy pour worksheet (voir macro ci-dessous),
j'obtiens l'erreur suivante : La méthode Copy de la
classe Worksheet a échoué. Cette erreur empêche ensuite
la duplication manuelle d'une feuille du classeur (qui
contient la macro) vers ce même classeur mais n'empêche
pas la copie d'une feuille de ce même classeur vers un
autre classeur.
Merci pour l'aide
Lionel
Sub Macro()
Application.ScreenUpdating = False
For i = 1 To 300
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Next i
Application.ScreenUpdating = True
End Sub
Bonsoir, Cela ne plante pas en soi sur un tour mais ta macro ne semble pas avoir d'objectif: tu ajoute une copie de la même feuille que tu supprime 300 fois renomme le double??? D'autre part,a u bout de plusieurs tours va voir dans l'explorateur de projet ta feuil dite 1 porte le numéro combien? A la longue ça plante...! ..dépassement je présume...
leSteph
"Lio" a écrit dans le message de news:11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
michdenis
Bonjour Lio,
Essaie ceci :
(Pas tester !) '---------------------------- Sub Macro() Dim SonNom As String Application.ScreenUpdating = False For i = 1 To 300 SonNom = Sheets(1).CodeName Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Sheets(1).CodeName = SonNom Next i Application.ScreenUpdating = True End Sub '----------------------------
Salutations!
"Lio" a écrit dans le message de news:11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
Bonjour Lio,
Essaie ceci :
(Pas tester !)
'----------------------------
Sub Macro()
Dim SonNom As String
Application.ScreenUpdating = False
For i = 1 To 300
SonNom = Sheets(1).CodeName
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Sheets(1).CodeName = SonNom
Next i
Application.ScreenUpdating = True
End Sub
'----------------------------
Salutations!
"Lio" <lionel.peyrichoux@wanadoo.fr> a écrit dans le message de news:11fb01c4a26a$4a826870$3501280a@phx.gbl...
Bonjour
Lorsque j'exécute un certain nombre de fois la
fonction copy pour worksheet (voir macro ci-dessous),
j'obtiens l'erreur suivante : La méthode Copy de la
classe Worksheet a échoué. Cette erreur empêche ensuite
la duplication manuelle d'une feuille du classeur (qui
contient la macro) vers ce même classeur mais n'empêche
pas la copie d'une feuille de ce même classeur vers un
autre classeur.
Merci pour l'aide
Lionel
Sub Macro()
Application.ScreenUpdating = False
For i = 1 To 300
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Next i
Application.ScreenUpdating = True
End Sub
(Pas tester !) '---------------------------- Sub Macro() Dim SonNom As String Application.ScreenUpdating = False For i = 1 To 300 SonNom = Sheets(1).CodeName Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Sheets(1).CodeName = SonNom Next i Application.ScreenUpdating = True End Sub '----------------------------
Salutations!
"Lio" a écrit dans le message de news:11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
...Patrick
salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ...Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news: 11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
salut,
quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
--
...Patrick
Quoi que vous fassiez, faites le bien .
Mail: http://cerbermail.com/?KPW0tTCjFw
Connectez vous sur ce forum par :
news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" <lionel.peyrichoux@wanadoo.fr> a écrit dans le message de news:
11fb01c4a26a$4a826870$3501280a@phx.gbl...
Bonjour
Lorsque j'exécute un certain nombre de fois la
fonction copy pour worksheet (voir macro ci-dessous),
j'obtiens l'erreur suivante : La méthode Copy de la
classe Worksheet a échoué. Cette erreur empêche ensuite
la duplication manuelle d'une feuille du classeur (qui
contient la macro) vers ce même classeur mais n'empêche
pas la copie d'une feuille de ce même classeur vers un
autre classeur.
Merci pour l'aide
Lionel
Sub Macro()
Application.ScreenUpdating = False
For i = 1 To 300
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Next i
Application.ScreenUpdating = True
End Sub
salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ...Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news: 11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
LeSteph
Re,... ben oui, même question ;-) "...Patrick" a écrit dans le message de news:%
salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ...Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news: 11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
Re,...
ben oui, même question
;-)
"...Patrick" <nospammm.pmac_kay@hotmail.com> a écrit dans le message de
news:%23jnbeanoEHA.3896@TK2MSFTNGP15.phx.gbl...
salut,
quel est l'interet d'ajouter une feuille pour la détruire juste derrière
?
ou alors j'ai pas compris (ce qui est tres possible )
--
...Patrick
Quoi que vous fassiez, faites le bien .
Mail: http://cerbermail.com/?KPW0tTCjFw
Connectez vous sur ce forum par :
news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" <lionel.peyrichoux@wanadoo.fr> a écrit dans le message de news:
11fb01c4a26a$4a826870$3501280a@phx.gbl...
Bonjour
Lorsque j'exécute un certain nombre de fois la
fonction copy pour worksheet (voir macro ci-dessous),
j'obtiens l'erreur suivante : La méthode Copy de la
classe Worksheet a échoué. Cette erreur empêche ensuite
la duplication manuelle d'une feuille du classeur (qui
contient la macro) vers ce même classeur mais n'empêche
pas la copie d'une feuille de ce même classeur vers un
autre classeur.
Merci pour l'aide
Lionel
Sub Macro()
Application.ScreenUpdating = False
For i = 1 To 300
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Next i
Application.ScreenUpdating = True
End Sub
Re,... ben oui, même question ;-) "...Patrick" a écrit dans le message de news:%
salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ...Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news: 11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
Lio
C'est juste une macro qui me permet de simuler l'erreur plus facilement. Réellement, le code fait plus de 800 lignes et doit être exécuté au moins une trentaine de fois. J'utilise 3 fois la fonction copy, fois 30, cela fait plus de 90 copy de feuille.
Pour éviter le problème du codename de la feuille, je viens d'ajouter les lignes suivantes: With ThisWorkbook .VBProject.VBComponents(.Worksheets ("Feuil1").CodeName).Name = "Feuil1" End With
avant Next i, cela permet d'avoir toujours le codename égal à Feuil1.
Pour info complémentaire, j'ai 8 cellules nommées.
Merci
Lio
-----Message d'origine----- salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ....Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news:
11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub
.
C'est juste une macro qui me permet de simuler l'erreur
plus facilement. Réellement, le code fait plus de 800
lignes et doit être exécuté au moins une trentaine de
fois. J'utilise 3 fois la fonction copy, fois 30, cela
fait plus de 90 copy de feuille.
Pour éviter le problème du codename de la feuille, je
viens d'ajouter les lignes suivantes:
With ThisWorkbook
.VBProject.VBComponents(.Worksheets
("Feuil1").CodeName).Name = "Feuil1"
End With
avant Next i, cela permet d'avoir toujours le codename
égal à Feuil1.
Pour info complémentaire, j'ai 8 cellules nommées.
Merci
Lio
-----Message d'origine-----
salut,
quel est l'interet d'ajouter une feuille pour la
détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
--
....Patrick
Quoi que vous fassiez, faites le bien .
Mail: http://cerbermail.com/?KPW0tTCjFw
Connectez vous sur ce forum par :
news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" <lionel.peyrichoux@wanadoo.fr> a écrit dans le
message de news:
11fb01c4a26a$4a826870$3501280a@phx.gbl...
Bonjour
Lorsque j'exécute un certain nombre de fois la
fonction copy pour worksheet (voir macro ci-dessous),
j'obtiens l'erreur suivante : La méthode Copy de la
classe Worksheet a échoué. Cette erreur empêche ensuite
la duplication manuelle d'une feuille du classeur (qui
contient la macro) vers ce même classeur mais n'empêche
pas la copie d'une feuille de ce même classeur vers un
autre classeur.
Merci pour l'aide
Lionel
Sub Macro()
Application.ScreenUpdating = False
For i = 1 To 300
Sheets(1).Copy Before:=Sheets(1)
Application.DisplayAlerts = False
Sheets("Feuil1").Delete
Application.DisplayAlerts = True
Sheets(1).Name = "Feuil1"
Next i
Application.ScreenUpdating = True
End Sub
C'est juste une macro qui me permet de simuler l'erreur plus facilement. Réellement, le code fait plus de 800 lignes et doit être exécuté au moins une trentaine de fois. J'utilise 3 fois la fonction copy, fois 30, cela fait plus de 90 copy de feuille.
Pour éviter le problème du codename de la feuille, je viens d'ajouter les lignes suivantes: With ThisWorkbook .VBProject.VBComponents(.Worksheets ("Feuil1").CodeName).Name = "Feuil1" End With
avant Next i, cela permet d'avoir toujours le codename égal à Feuil1.
Pour info complémentaire, j'ai 8 cellules nommées.
Merci
Lio
-----Message d'origine----- salut, quel est l'interet d'ajouter une feuille pour la détruire juste derrière ?
ou alors j'ai pas compris (ce qui est tres possible )
-- ....Patrick Quoi que vous fassiez, faites le bien . Mail: http://cerbermail.com/?KPW0tTCjFw Connectez vous sur ce forum par : news://msnews.microsoft.com/microsoft.public.fr.excel
"Lio" a écrit dans le message de news:
11fb01c4a26a$4a826870$ Bonjour
Lorsque j'exécute un certain nombre de fois la fonction copy pour worksheet (voir macro ci-dessous), j'obtiens l'erreur suivante : La méthode Copy de la classe Worksheet a échoué. Cette erreur empêche ensuite la duplication manuelle d'une feuille du classeur (qui contient la macro) vers ce même classeur mais n'empêche pas la copie d'une feuille de ce même classeur vers un autre classeur.
Merci pour l'aide
Lionel
Sub Macro() Application.ScreenUpdating = False For i = 1 To 300 Sheets(1).Copy Before:=Sheets(1) Application.DisplayAlerts = False Sheets("Feuil1").Delete Application.DisplayAlerts = True Sheets(1).Name = "Feuil1" Next i Application.ScreenUpdating = True End Sub