XL 2010 ameliorer une macro tres long à executer

Meloman

XLDnaute Occasionnel
Bonjour à tous je viens vous demander votre aide sur mon projet de planning. mon problème est une macro qui fonctionne mais bien trop long à calculer presque 5 Mn malgrer mes astuces j'ai guerre gagner du temps.

je vous explique un peu

j'ai deux onglet nomer Dispo et Liste

dans dispo il y a des liste de nom sur un mois en bleu se sont les pompiers pro en blanc les volontaire.
Dans l'onglet liste c'est ici que ce joue le planning du personnelle sélectionner pour la garde du jour.

ma macro me permet ni plus ni moins de mettre en evidence les nom des pompiers pro du jour en les mettant en gras

et c'est là que le soucis ce pose mes macros pour le matin apres midi et le soir sur 31 jour est super long

pouvez vous m'aider svp à que ce soit moins long merci d'avance
 

Fichiers joints

Lone-wolf

XLDnaute Barbatruc
Bonjour Meloman

Juste une remarque.

Quand tu écrit n = Sheets("Liste").Cells(300, 14).End(xlUp).Row , la variable est Long et non String.
String si n = Sheets("Liste").Cells(300, 14).Value et que la cellule est un texte.
Long si n = Sheets("Liste").Cells(300, 14).Value est un nombre
Date si n = Sheets("Liste").Cells(300, 14).Value est une date
Double si n = Sheets("Liste").Cells(300, 14).Value = 150. 85€

EDIT: bonjour JBARBE. Celà ne vas pas suffire, il faut modifier les macros en tableaux, mais pour moi c'est compliqué.
 
Dernière édition:

JBARBE

XLDnaute Barbatruc
Bonjour à tous,
Essai de mettre au début de tes macros concernées :
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Et à la fin:
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

Cela va diminuer l'exécution de tes macros, mais il faut quand même tenir compte de l'énorme travail de celle-ci !
Bonne journée !
 

Meloman

XLDnaute Occasionnel
BONJOUR à vous et merci pour votre aide j'ai appliquer la solution de jbarbe mais effectivement sa reste toujour aussi long :( et la mes competence sont bien limite
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous,

Voir fichier joint. Le code est dans module1. Cliquer sur le bouton bleu "Les Pros" sur la feuille "Liste". Les "PRO" sont en police bleu & gras.

nota: j'ai réorganisé le contenu de quelques cellules fusionnées pour que la donnée d'une zone fusionnée soit dans la première cellule de la zone fusionnée.
 

Fichiers joints

Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Bonsoir à tous :)

J'ai oublié de dire une chose concernant les variables.

Si c'est un garçon : c'est un LONG, si c'est une fille c'est un STRING. :D:D:D
 

Meloman

XLDnaute Occasionnel
Bonjour Lone-Wolf, MaPomme ainsi que PierreJean un grand merci pour vos deux propositions celui de ma pomme sur un projet vierge tourne en 36 secondes et pierejean en 16s mais ce qui compte c'est vous m'avez superbement bien sortis une épine du pied pour les variable j'ai pas trop compris le memo technique bien que en fait string en excel je l'utilise quand c'est pour stoquer temporairement une valeur et long dés il y a for pour une boucle aprés je suis trés limité vous avez dût vous rendre compte donc je vous renouvelle mes remerciement pour votre aide précieuse bon dimanche à vous.
 

ROGER2327

XLDnaute Barbatruc
Bonjour à tous.

Un autre essai.
(Brut de fonderie ; si ça fait le boulot, dîtes-le : il faudra peaufiner.)

Bonne journée.


ℝOGER2327
#8498


Mercredi 25 Gueules 144 (Sainte Marmelade, inspirée - fête Suprême Quarte)
1[SUP]er[/SUP] Ventôse An CCXXV, 4,9733h - tussilage
2017-W07-7T11:56:10Z
 

Fichiers joints

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous,

Juste par curiosité, pouvez-vous me donner un ordre d'idée de la durée d'exécution de ma macro (fichier message #5) ?

Meloman trouve 36s alors que sur mon bouzin, c'est inférieur à la seconde (ce qui me paraît étrangement peu) ??? Je ne comprends pas.

D'avance, merci :).
 

ROGER2327

XLDnaute Barbatruc
Chez moi :
pierrejean : 15,3s
mapomme : 0,2s
moi : 0,2s


ℝOGER2327
#8499


Mercredi 25 Gueules 144 (Sainte Marmelade, inspirée - fête Suprême Quarte)
1[SUP]er[/SUP] Ventôse An CCXXV, 5,1947h - tussilage
2017-W07-7T12:28:03Z
 

JBARBE

XLDnaute Barbatruc
Bonjour à tous,
Tous utilise les tableaux avec ubound ( donc plus de rapidité des macros)!
Sur mon ordi de 5 ans d'âges :
Roger2327 = 0,55 s
mapomme = 0,77 s
PierreJean = 21,87 s

Désolé pour PierreJean, mais il fallait établir la vérité que Meloman avait signalé mapomme trop long !
Bonne journée à tous et chapeau pour toutes ces macros à conserver bien au chaud !
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour JBARBE :),

Merci d'avoir rélevé et publié les durées.

Je crois bien que j'ai été une fois confronté au même cas de durée anormalement longue. Pour autant que je me souviens (oh vieillesse ennemie!), c'était après un crash d'Excel. Après un redémarrage du micro (et pas seulement celui d'Excel) tout était rentré dans l'ordre.
 
Dernière édition:

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas