XL 2010 Application.ScreenUpdating

Mirguy23

XLDnaute Nouveau
Bonjour tout le monde!

J'ai inséré la fonction Application.ScreenUpdating = False afin d'optimiser le fonctionnement du macro, mais certains éléments des cellules mon classeur n'étaient perdus et certains nombres irréel (plus exacte).

Ma question est de savoir, à quel moment/ou précisément peut-on utiliser cette fonction.

Je vous remercie d'avance pour vos explications.

Voici un exemple d'un de cas où j'ai utilisé Application.ScreenUpdating:

VB:
Application.ScreenUpdating = False

Call CleanImports

shCommande.Activate

Rows("6:6").Select

Range(Selection, Selection.End(xlDown)).Select

Selection.Sort Key1:=Range("G6"), Order1:=xlAscending, _

Key2:=Range("E6"), Order2:=xlAscending, _

Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:=xlSortNormal

Selection.Sort Key1:=Range("A6"), Order1:=xlAscending, _

Key2:=Range("C6"), Order2:=xlAscending, _

Key3:=Range("B6"), Order3:=xlAscending, _

Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:=xlSortNormal

Call MakeSynthese
[/FONT][/COLOR]
[FONT=book antiqua][COLOR=rgb(0, 0, 0)]End Sub
 
Dernière édition:

Roblochon

XLDnaute Impliqué
Bonjour,

Pouvez-vous rééditer votre message, qui est illisible?

Pour ce que j'ai pu voir de votre question, Application.ScreenUpdating = False, sert à stopper la mise à jour de l'écran lorsque qu'une macro entraîne de nombreux 'rafraîchissements' écran (mises à jour d'affichages).

Généralement on le met en début de macro ou de boucle qui modifie l'affichage écran et on le rétablit ensuite en le mettant à True.
Normalement si l'on oublie de le mettre à True à la fin, il devrait se rétablir tout seul lorsque la macro s'achève. Mais il y a parfois des surpprise.
De plus il est bon de remettre l'application dans l'état où on la trouvée en entrant.

Bonne fin d'après-midi
 

Mirguy23

XLDnaute Nouveau
Bonjour Roblochon,
j'ai fait, donc j'ai mis Application.ScreenUpdating = True avant le End Sub, et ça marche.

Je vous remercie de m'avoir aider !
 

Roblochon

XLDnaute Impliqué
Re,

Tant mieux, mais par contre vous n'avez pas réédité votre premier post qui est quasi illisible. Pour les futurs demandeurs, ce pourrait être important.

Bonne soirée
 

Discussions similaires


Haut Bas