Réinitialiser l'écranMise à jour pour la compatibilité ascendante avec Excel XP - Conseils Excel

Table des matières

Mon conseil du jour est un peu de ma propre expérience. Au fur et à mesure que vous apprenez à écrire du code, vous avez probablement appris que vous pouvez radicalement accélérer votre macro en désactivant la mise à jour de l'écran pendant l'exécution de la macro. Vous ajouteriez cette ligne de code à votre macro:

Sub Test() Application.ScreenUpdating = False '… macro code here Application.ScreenUpdating = True End Sub

Dans Excel 2000 et les versions antérieures, il n'était pas nécessaire de rétablir ScreenUpdating sur true. Une fois la macro terminée, Excel reviendrait toujours à la remise à jour de l'écran à vrai. Lorsque j'écrivais des macros pour cette plate-forme, je laissais souvent le ScreenUpdating = True parce que je savais qu'Excel le gérerait pour moi, et cela résolvait les tracas d'avoir à s'en soucier.Cette macro a été appelée par un autre endroit qui ne voulait pas la mise à jour de l'écran est réactivée ou non.

Maintenant que ces macros sont utilisées dans Excel 2002, nous avons un problème. La politique d'Excel 2002 est que la macro doit réactiver la mise à jour de l'écran. Sur ma machine, ce n'est un problème que si j'arrête une macro pendant le débogage, mais sur d'autres machines, la mise à jour de l'écran reste désactivée, laissant à des situations très déroutantes. J'aime que les choses soient prévisibles, et ce n'est certainement pas le cas!

Ainsi, le conseil du jour, que vous écriviez des macros dans Excel 97, Excel 2000 ou Excel 2002, rétablissez toujours la mise à jour de l'écran avec:

Application.ScreenUpdating = True

Articles intéressants...