Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur dans loop

2 réponses
Avatar
christophe.paul
Bonjour,
j'obtiens une erreur lors d'une boucle.... "La m=E9thode copy de la
classe Worksheet a =E9chou=E9" Erreur 1004.
Elle fait 15 feuilles et se bloque.

Sub Cr=E9ation()
'Cr=E9ation
For c =3D 1 To 30
Sheets("Eleve0").Select
ActiveSheet.Unprotect Password:=3D"zaza"
Sheets("Eleve0").Copy Before:=3DSheets("Eleve0")
'Rename
Sheets("Eleve0 (2)").Select
Sheets("Eleve0 (2)").Name =3D "Eleve" + Str(c)
ActiveSheet.Protect Password:=3D"zaza"
Next c
End Sub

Les autres boucles se passent sans probl=E8me.
Quelqu'un peut il me venir en aide? Merci

2 réponses

Avatar
Xavier POWAGA
salut, ça va pas t'aider mais j'ai testé chez moi et ça marche

pb de mémoire ?

a écrit dans le message de news:

Bonjour,
j'obtiens une erreur lors d'une boucle.... "La méthode copy de la
classe Worksheet a échoué" Erreur 1004.
Elle fait 15 feuilles et se bloque.

Sub Création()
'Création
For c = 1 To 30
Sheets("Eleve0").Select
ActiveSheet.Unprotect Password:="zaza"
Sheets("Eleve0").Copy Before:=Sheets("Eleve0")
'Rename
Sheets("Eleve0 (2)").Select
Sheets("Eleve0 (2)").Name = "Eleve" + Str(c)
ActiveSheet.Protect Password:="zaza"
Next c
End Sub

Les autres boucles se passent sans problème.
Quelqu'un peut il me venir en aide? Merci
Avatar
Rai
Bonjour,
j'obtiens une erreur lors d'une boucle.... "La méthode copy de la
classe Worksheet a échoué" Erreur 1004.
Elle fait 15 feuilles et se bloque.

Sub Création()
'Création
For c = 1 To 30
Sheets("Eleve0").Select
ActiveSheet.Unprotect Password:="zaza"
Sheets("Eleve0").Copy Before:=Sheets("Eleve0")
'Rename
Sheets("Eleve0 (2)").Select
Sheets("Eleve0 (2)").Name = "Eleve" + Str(c)
ActiveSheet.Protect Password:="zaza"
Next c
End Sub

Les autres boucles se passent sans problème.
Quelqu'un peut il me venir en aide? Merci

Bonsoir,


Je n'ai pas réussi à reproduire ton erreur.
Peut-être peux-tu nous placer ton classeru complet sur cjoint.com
Comme ça nous pourrions avoir une idée de l'ensemble.

Autrement, j'ai un peu simplifié ton code :

Sub Création()
Sheets("Eleve0").Unprotect Password:="zaza"
For c = 1 To 30
Sheets("Eleve0").Copy Before:=Sheets("Eleve0")
'Rename
Sheets("Eleve0 (2)").Name = "Eleve" & c
Next c
Sheets("Eleve0").Protect Password:="zaza"
End Sub

Inutile de répeter 30 fois la déprotection/protection, place la en
dehors de la boucle. STR(c) est remplacé par une concaténation.

A te lire à ce sujet.

Rai