accélérer l'execution de macro

V

val

Guest
Bonjour,

j'ai réalisé une macro à l'aide d'enrgistrements succéssifs.
cela fonctionne bien mais l'exécution est longue.( réalisation de plusieurs filtres élaborés (12) puis création d'un graphique à partir des filtres).

Y a-t-il un moyen d'accélérer l'excution de cette macro.

merci de votre aide

VAL
 
E

ernest

Guest
salut val

difficile sans voir le code

L'enregistreur de macro, utilise la méthode de sélection des objets pour travailler ce qui ralentit considérablement le traitement.

il faudrait que tu supprimes tous les select de ton code, mais pas n'importe comment.

quand l'enregistreur copie une cellule vers une autre, voici le code qu'il te donne :

Range('A1').Select
Selection.Copy
Range('C8').Select
ActiveSheet.Paste

tu peux facilement faire ceci :

Range('A1').Copy Destination:=Range('C8')

ou encore mieux : Range('C8')= Range('A1')

tu peux aussi figé ton ecran, regarde du coté de application.screenupdating

bye
 
G

GIBI

Guest
salut,


as-tu appliquer les standrads :

Déclarer les variables pour éviter l'utilisation lourde des variable de type variant (en poarticulier pour les variable de numérique (INT long.

désactiver l'affichage et le calcul des formule pendant le travail :
Application.ScreenUpdating = False

TypeCalcul = Application.Calculation
Application.Calculation = xlCalculationManual


et réactiver à la fin
Application.ScreenUpdating = True
Application.Calculation = TypeCalcul


bon courage
 

Discussions similaires

Statistiques des forums

Discussions
312 329
Messages
2 087 332
Membres
103 519
dernier inscrit
Thomas_grc11