Améliorer la performance du calcul

Bonjour,

J'ai réalisé une macro permettant d'avoir des informations dans un 1er tableau

J'ai ensuite réalisé d'autres tableau permettant d'affiner les résultats du 1er tableau

Cependant en utilisant la fonc NB.SI.ENS pour chaque cellule soit 8x21 cela à considérable ralentie toute la macro auriez vous une solution svp ? Sache qu'à la fin le traitement doit faire 16x21 cellules

Merci d'avance

13qfd2-version-2.xlsm (127.81 Ko)

Bonjour,

1)- dans les formules NB.SI.ENS, délimitez les plages, par exemple V$2:V$39 plutôt que la colonne entière V:V, et ce pour chaque plage de la formule. Je n'ai fait que le premier tableau, à vous de faire le second tableau sur le même principe.

2)- dans les macros, ajoutez la ligne "Application.ScreenUpdating=False" en début de macro, cela empêche les rafraîchissement de l'écran et augmente la vitesse d'exécution. Codes modifiés.

3)- dans les macros, Il faut éviter de sélectionner les cellules, ça ralentit considérablement le temps d'exécution. Codes modifiés

4)-Quand on doit remplir une plage de cellules contiguës, plutôt que de remplir une à une chaque cellule, on passe par la commande "ARRAY" qui regroupe l'ensemble de ces cellules. Codes modifiés.

Vous devriez voir des améliorations dans la vitesse d'exécution.

Cdlt

Je vais appliquer vos conseils merci beaucoup !

Bonjour étudiant_21,Arturo83,

Voici un essai en pièce jointe:

17qfd2-version-2.xlsm (128.56 Ko)

Merci oui c'est une méthode efficace par contre je ne connais pas du tout les fonctions et je ne saurais pas faire des modifs pour le moment

Merci bcp

Rechercher des sujets similaires à "ameliorer performance calcul"