execution macro trop lente

  • Initiateur de la discussion micky27
  • Date de début
M

micky27

Guest
bonjour le forum

La macro que j'ai faite me pose quelques problèmes de vitesse à l'execution.
Fait bizare , lorsque je ne suis pas en "classeur partagé " ça va , mais dès que je suis en classeur partagé la première execution de la macro est rapide et la deuxième très très lente.


Ne comprennant pas pourquoi je fais appel aux multiples talents de ce forum.

Merci d'avance pour le coup de main

Ci JOINT LES INFOS :

j'ai un fichier avec 3 feuilles

une feuille "saisie des données"
une feuille " transfert "
une feuille " synthèse"

Le fichier est utilisé en " Classeur partagé "

sur la feuille "saisie de donnée" je selectionne avec la fonction filtre les infos que je souhaite récupérées.
Ces infos sont recopiées dans la feuille transfert puis recupérées pour étre mis en forme dans la feuille synthèse .

Ci joint la macro :

Sub recopiepoursynthèse()
'
' recopiepoursynthèse Macro
'

'
Sheets("transfert").Select
Range("A4:ae3000").Select
Selection.ClearContents

Sheets(" Saisie des données").Select
Range("a11:ae3000").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("transfert").Select
Range("A4").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Sheets("transfert").Select
Range("R4:T3000").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Synthèse").Select
Range("A9").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False

Sheets("transfert").Select
Range("V4:V3000").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Synthèse").Select
Range("D9").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False

Sheets("transfert").Select
Range("Z4:aE3000").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Synthèse").Select
Range("E9").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False

Range("a6").Select


End Sub


Merci encore.
 
B

Bernard

Guest
Bonjour Micky27

Une simplification de ta macro devrait accélérer les transferts

Sub recopiepoursynthèse()
Sheets("transfert").Activate
Range("A4:AE3000").ClearContents
Sheets("Saisie des données").Range("A11:AE3000").Copy Sheets("transfert").Range("A4")
Sheets("transfert").Range("R4:T3000").Copy Sheets("Synthèse").Range("A9")
Sheets("transfert").Range("V4:V3000").Copy Sheets("Synthèse").Range("D9")
Sheets("transfert").Range("Z4:AE3000").Copy Sheets("Synthèse").Range("E9")
Range("a6").Activate
End Sub

Cordialement

Bernard
 
P

Pascal76

Guest
Bonjour

Je reprends juste ce que vient de faire Bernard et un petit plus qui accélère.

Sub recopiepoursynthèse()
Application.ScreenUpdating = False '<=== evite la mise à jour de l'écran
Sheets("transfert").Activate
Range("A4:AE3000").ClearContents
Sheets("Saisie des données").Range("A11:AE3000").Copy Sheets("transfert").Range("A4")
Sheets("transfert").Range("R4:T3000").Copy Sheets("Synthèse").Range("A9")
Sheets("transfert").Range("V4:V3000").Copy Sheets("Synthèse").Range("D9")
Sheets("transfert").Range("Z4:AE3000").Copy Sheets("Synthèse").Range("E9")
Range("a6").Activate
Application.ScreenUpdating = True
End Sub


Bon courage

Pascal
 
M

micky27

Guest
Bonjour Bernard, Pascal

merci pour vos 2 réponses.

J'ai tester la macro mais ça plante sur la ligne

Sheets("Saisie des données").Range("A11:AE3000").Copy Sheets("transfert").Range("A4")

A votre avis qu'est ce qui plante ?

Merci d'avance pour ce complément d'info
 
B

Bernard

Guest
Rebonjour Micky27 et Pascal76,

Plusieurs causes sont possibles :

- La plus simple c'est que le nom des feuilles ne correspondent pas à l'exemple proposé ?

- Si la macro plante, un message doit apparaître quel est-il ? C'est la cause !


Cordialement

Bernard
 

Discussions similaires

Réponses
2
Affichages
151
Réponses
5
Affichages
177

Statistiques des forums

Discussions
312 496
Messages
2 088 978
Membres
103 996
dernier inscrit
KB4175