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

Problème de copie de feuille

8 réponses
Avatar
Patrick
Bonsoir à toutes et à tous

Avec la macro ci-dessous je copie une feuille ("JoursCongés") autant de fois
que j'ai de noms dans la feuille listeNoms.
Arrivé à la 58 ème copie vba m'indique l'erreur 1004 (méthode copy a
échoué).
For Each C In Sheets("ListeNoms").Range(Range("C2"), Selection.End xlDown))
Nom = C.Value
Prénom = C.Offset(, 1).Value
Nom_Feuille = Nom & " " & Prénom
Sheets("JoursCongés").Copy After:=Sheets("Fonctions")
ActiveSheet.PageSetup.PrintArea = "$B$1:$F$26"
ActiveSheet.Name = Nom_Feuille
Range("B8").Value = Nom
Range("C8").Value = Prénom
Next C

Pourriez-vous m'indiquer ce qui provoque cette erreur. Merci d'avance.

8 réponses

Avatar
Michel Gaboly
Bonsoir,

La première chose à laquelle je pense, est un problème de mémoire insuf-
fisante.

Si tu le peux, teste ta procédure sur un autre poste (de préférence avec une
quantité différente de RAM) pour voir si le problème se produit également,
et si oui, si c'est au même stade (58ème copie).

Autre approche : modifie la macro pour ne passer que 57 fois dans la boucle,
puis retourne dans l'environnement Excel et essaie de faire la 58ème copie
par "Edition, Déplacer ou copier un feiille...", ou avec le menu contextuel, en
cliquant sur l'onglet de la feuille ("JoursCongés").

En effet une erreur 1004 provient de l'appli (Excel) et non de VBA. Si tu ar-
rives à reproduire le problème sans passer par VBA, le message devrait être +
explicite.



Bonsoir à toutes et à tous

Avec la macro ci-dessous je copie une feuille ("JoursCongés") autant de fois
que j'ai de noms dans la feuille listeNoms.
Arrivé à la 58 ème copie vba m'indique l'erreur 1004 (méthode copy a
échoué).
For Each C In Sheets("ListeNoms").Range(Range("C2"), Selection.End xlDown))
Nom = C.Value
Prénom = C.Offset(, 1).Value
Nom_Feuille = Nom & " " & Prénom
Sheets("JoursCongés").Copy After:=Sheets("Fonctions")
ActiveSheet.PageSetup.PrintArea = "$B$1:$F$26"
ActiveSheet.Name = Nom_Feuille
Range("B8").Value = Nom
Range("C8").Value = Prénom
Next C

Pourriez-vous m'indiquer ce qui provoque cette erreur. Merci d'avance.


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
Patrick
Merci Michel pour ta réponse.
J'ai essayé également cette possibilité (de le faire manuellement). Résultat
: il ne se passe plus rien et excel ne me copie pas la feuille et ne
m'indique pas d'erreur.

Quand à mon PC il a 256 MB RAM

Patrick

PS : désolé mais j'ai reposté ma demande ce soir à 2334.
Avatar
Michel Gaboly
De rien,

J'ai vu que tu avais reposté la question ;-))

2 autres pistes :

1 - Fais une copie de ta feuille ("JoursCongés") vers un nouveau classeur
qui ne contiendra donc rien d'autre. Enregistre-le et regarde combien il pèse
(en kilo-octets). Si tu atteins ou dépasse plusieurs centaines de Ko, le fait
d'avoir un problème de mémoire ne serait pas étonnant.

2 - Fais un "Enregistrer sous" de ton classeur, et allège en supprimant des lignes
et/ou des colonnes (au moins la moitié) la feuille ("JoursCongés").

Relance la macro, et regarde si le blocage intervient toujours à la 58ème copie,
ou s'il va plus loin. Là encore si tu passes de 58 à 100 par exemple, cela confir-
merait un problème lié à la mémoire ou à la taille du document.



Merci Michel pour ta réponse.
J'ai essayé également cette possibilité (de le faire manuellement). Résultat
: il ne se passe plus rien et excel ne me copie pas la feuille et ne
m'indique pas d'erreur.

Quand à mon PC il a 256 MB RAM

Patrick

PS : désolé mais j'ai reposté ma demande ce soir à 2334.


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
Patrick
Résultat des courses :

ma feuille enregistrée sous fait 14.5 ko.

Après avoir fait un 1er passage avec la macro, le nombre reste à entre 52 et
58 feuilles copiées. J'enregistre mon classeur, le ferme puis au 2ème
passage de la macro le nombre de feuilles copiées descend entre 20 et 30 (ce
n'est pas tout à fait régulier à chaque passage entre la 2 la 3 ou la 4ème
fois.

Mais je pense que la piste mémoire est probablement la bonne. A moins que
...

Bon je vais suivre le fil demain matin.

Bonne soirée à tous Patrick
Avatar
Patrick
Bonjour
J'ai essayé ma proc au travail (sur un poste en réseau), j'ai eu
approximativement les mêmes résultats.

Meilleures salutations Patrick

"Michel Gaboly" a écrit dans le message de
news:
De rien,

J'ai vu que tu avais reposté la question ;-))

2 autres pistes :

1 - Fais une copie de ta feuille ("JoursCongés") vers un nouveau classeur
qui ne contiendra donc rien d'autre. Enregistre-le et regarde combien il
pèse

(en kilo-octets). Si tu atteins ou dépasse plusieurs centaines de Ko, le
fait

d'avoir un problème de mémoire ne serait pas étonnant.

2 - Fais un "Enregistrer sous" de ton classeur, et allège en supprimant
des lignes

et/ou des colonnes (au moins la moitié) la feuille ("JoursCongés").

Relance la macro, et regarde si le blocage intervient toujours à la 58ème
copie,

ou s'il va plus loin. Là encore si tu passes de 58 à 100 par exemple, cela
confir-

merait un problème lié à la mémoire ou à la taille du document.



Merci Michel pour ta réponse.
J'ai essayé également cette possibilité (de le faire manuellement).
Résultat


: il ne se passe plus rien et excel ne me copie pas la feuille et ne
m'indique pas d'erreur.

Quand à mon PC il a 256 MB RAM

Patrick

PS : désolé mais j'ai reposté ma demande ce soir à 2334.


--
Cordialement,

Michel Gaboly
http://www.gaboly.com





Avatar
Michel Gaboly
Bonjour,

Tu ne précises pas si ce poste, au boulot a plus de RAM ou non. ;-((


Bonjour
J'ai essayé ma proc au travail (sur un poste en réseau), j'ai eu
approximativement les mêmes résultats.

Meilleures salutations Patrick

"Michel Gaboly" a écrit dans le message de
news:
De rien,

J'ai vu que tu avais reposté la question ;-))

2 autres pistes :

1 - Fais une copie de ta feuille ("JoursCongés") vers un nouveau classeur
qui ne contiendra donc rien d'autre. Enregistre-le et regarde combien il
pèse

(en kilo-octets). Si tu atteins ou dépasse plusieurs centaines de Ko, le
fait

d'avoir un problème de mémoire ne serait pas étonnant.

2 - Fais un "Enregistrer sous" de ton classeur, et allège en supprimant
des lignes

et/ou des colonnes (au moins la moitié) la feuille ("JoursCongés").

Relance la macro, et regarde si le blocage intervient toujours à la 58ème
copie,

ou s'il va plus loin. Là encore si tu passes de 58 à 100 par exemple, cela
confir-

merait un problème lié à la mémoire ou à la taille du document.



Merci Michel pour ta réponse.
J'ai essayé également cette possibilité (de le faire manuellement).
Résultat


: il ne se passe plus rien et excel ne me copie pas la feuille et ne
m'indique pas d'erreur.

Quand à mon PC il a 256 MB RAM

Patrick

PS : désolé mais j'ai reposté ma demande ce soir à 2334.


--
Cordialement,

Michel Gaboly
http://www.gaboly.com





--
Cordialement,

Michel Gaboly
http://www.gaboly.com



Avatar
Patrick
Là, je suis un peu "coincé" car je ne sais où aller puiser cette
information.

Patrick
Avatar
FxM
Bonjour,

Sur PC :
Panneau de configuration - système - sur le 1er onglet

@+
FxM


Patrick wrote:
Là, je suis un peu "coincé" car je ne sais où aller puiser cette
information.

Patrick