Execution lente en VBA

  • Initiateur de la discussion Initiateur de la discussion apb
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

apb

XLDnaute Occasionnel
😱
Bonjour à Tous
Merci d'avance pour votre aide.

Je vous joins mon fichier exemple pour documenter mon problème.

Dans ce fichier, en fonction des codes de la feuil2 col B saisie dans la feuille planning, je change la couleur de fond de la case grâce à une zone de saisie définie et un code VBA.

Le problème est que, quand il n'y que Janvier, c'est rapide, mais sur les 12 mois de l'année cela devient très long à l'exécution.

Je cherche de l'aide pour optimiser cette procédure.

D'avance je vous en remercie.
 
apb écrit:
😱
Bonjour à Tous
Merci d'avance pour votre aide.

Je vous joins mon fichier exemple pour documenter mon problème.

Dans ce fichier, en fonction des codes de la feuil2 col B saisie dans la feuille planning, je change la couleur de fond de la case grâce à une zone de saisie définie et un code VBA.

Le problème est que, quand il n'y que Janvier, c'est rapide, mais sur les 12 mois de l'année cela devient très long à l'exécution.

Je cherche de l'aide pour optimiser cette procédure.

D'avance je vous en remercie.
 
apb écrit:
😱
Bonjour à Tous
Merci d'avance pour votre aide.

Je vous joins mon fichier exemple pour documenter mon problème.

Dans ce fichier, en fonction des codes de la feuil2 col B saisie dans la feuille planning, je change la couleur de fond de la case grâce à une zone de saisie définie et un code VBA.

Le problème est que, quand il n'y que Janvier, c'est rapide, mais sur les 12 mois de l'année cela devient très long à l'exécution.

Je cherche de l'aide pour optimiser cette procédure.

D'avance je vous en remercie.
 
apb écrit:
apb écrit:
😱
Bonjour à Tous
Merci d'avance pour votre aide.

Je vous joins mon fichier exemple pour documenter mon problème.

Dans ce fichier, en fonction des codes de la feuil2 col B saisie dans la feuille planning, je change la couleur de fond de la case grâce à une zone de saisie définie et un code VBA.

Le problème est que, quand il n'y que Janvier, c'est rapide, mais sur les 12 mois de l'année cela devient très long à l'exécution.

Je cherche de l'aide pour optimiser cette procédure.

D'avance je vous en remercie.

Excuse moi pour ces doublons le fichiers joint ne voulais pas passer 😱 😱
 
apb écrit:
apb écrit:
apb écrit:
😱
Bonjour à Tous
Merci d'avance pour votre aide.

Je vous joins mon fichier exemple pour documenter mon problème.

Dans ce fichier, en fonction des codes de la feuil2 col B saisie dans la feuille planning, je change la couleur de fond de la case grâce à une zone de saisie définie et un code VBA.

Le problème est que, quand il n'y que Janvier, c'est rapide, mais sur les 12 mois de l'année cela devient très long à l'exécution.

Je cherche de l'aide pour optimiser cette procédure.

D'avance je vous en remercie.

Excuse moi pour ces doublons le fichiers joint ne voulais pas passer 😱 😱

Il y avait un espace !!!! [file name=essai2_20060219111121.zip size=44031]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/essai2_20060219111121.zip[/file]
 

Pièces jointes

re

le pb j epense est que dans un premier temps tu détectes la zone à gérer mais que ta macro 'condition...' balaie tous les mois

en passant un paramètre du style

Call condition_select_case_multiple_rapide_screenupdating('zone_de_saisie_Janvier')

et en le récupérant

Sub condition_select_case_multiple_rapide_screenupdating(zone)
...
For Each c In Range(zone)
Select Case c
Case Is = 'ap'
c.Interior.Color = RGB(255, 153, 204)
Case Is = 'ca', 'bd', 'jtl', 'cm', 'asa', 'rc', 'cet', 'rtt', 'tc'
c.Interior.Color = RGB(255, 255, 0)
Case Is = 'G'
c.Interior.Color = RGB(255, 102, 0)
Case Is = 'S2', 'PR', 'ast'
c.Interior.Color = RGB(51, 102, 255)
Case Is = 'S1'
c.Interior.ColorIndex = 8
Case Is = 'fx'
c.Interior.ColorIndex = 4
Case Is = 'S'
c.Interior.Color = RGB(204, 204, 255)
Case Else
c.Interior.ColorIndex = 2
End Select
Next
end sub

devrait être plus rapide

A+
 
Bonjour à tous,

Si j'ai bien compris, tu déclenches ta macro sur un worksheet_change...

Dans ce cas, pourquoi ne pas traiter le cas de la cellule active (target)? cela t'éviterait de parcourir toutes les zones.

En espèrant ne pas être à coté de la plaque

Michel_M
 
Bonjour, et merci pour votre aide,

J'ai modifié mon fichier VBA, mais je pense faire une erreur, Pouvez vous m'aider à deboguer?
Merci


Bon appétit

Encore Merci [file name=essai2_20060219113851.zip size=43592]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/essai2_20060219113851.zip[/file]
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

A
Réponses
11
Affichages
2 K
A
S
Réponses
7
Affichages
2 K
syriak
S
Retour