Accélérer une macros VBA

Résolu/Fermé
Juju - 30 juin 2010 à 20:53
 rwan44 - 1 juil. 2015 à 14:52
Bonjour,

Je voudrais savoir si c'est possible d'accélérer les macros VBA.
En effet quand je clic sur un bouton dans un classeur, cela me rempli une base de données dans un autre classeur avec les informations du premier. Et c'est un peu long a s'exécuter.
Est-ce qu'il y a des astuces ou pas du tout ?
Et si oui, lesquels ?

Merci d'avance.

1 réponse

eriiic Messages postés 24494 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 29 janvier 2023 7 156
Modifié par eriiic le 30/06/2010 à 22:40
Bonsoir,

Pas une, mais plusieurs astuces :
- ne plus rafraichier l'écran :
application.screenupdating=false
à mettre en début de programme, rétablir à la fin avec =true
- si des formules sont réévaluées à cause des copies bloquer le calcul automatique :
application.calculation=xlmanual
rétablir à la fin avec = xlautomatic, éventuellement lancer un .calculate

- déclarer et typer les variables
éviter le type variant
privilégier à chaque fois que c'est possible le type long
-supprimer tous les .select inutiles (il y en a beaucoup...)

éventuellement revoir ses boucles et la structure du programme

eric
10
Ok merci c'est cool
0
Super ça marche nickel, merci beaucoup tu géres.
0