Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Softmama

XLDnaute Accro
Bonjour,

N'ayant pas trouvé de solution satisfaisante à mon problème, je me tourne vers vous.
J'ai une feuille avec quelques dizaines (voire centaines) d'autoShapes que je manipule via VBA. Tant qu'il y en a peu (moins de 50 environ), le scintillement de l'écran reste acceptable mais lorsqu'ils sont nombreux, il devient tout simplement insupportable.

Je sais qu'un Application.ScreenUpdating = False permet de bloquer précisément ce désagrément, mais dans le cas présent, plusieurs macros qui s'appellent les unes les autres interviennent dont certaines ont des ScreenUpdating à True afin que l'on puisse voir les Shapes se déplacer.

Le fichier sur lequel je bute étant devenu une quasi usine à gaz, j'ai construit un petit fichier sur un modèle assez semblable afin que vous puissiez visualiser mon problème. De nombreuses macros (que j'ai essayé de faire simples afin que tout le monde puisse suivre) viennent gérer l'apparition, les déplacements des cubes, leurs animations, ombres... Et plus les cubes sont nombreux à l'écran, plus le problème est pesant.

J'ai tenté d'englober l'ensemble de mes macros dans une meta-macro qui commencerait par Application.screenupdating = false ... et finirait par ... .screenUpdating=True, mais du coup, les .Onkey ne fonctionne plus ou le rafraichissement de l'écran est complètement bloqué.

Je me disais qu'il devait probablement exister une API pour régler ce genre de souci, ou peut-être une option à cocher quelque part dans excel, mais j'avoue avoir cherché sans succès. Je suis ouvert à toutes les pistes qui pourraient m'aider à avancer.

Voir le fichier joint pour mieux saisir le souci.
Merci.
 

Pièces jointes

  • XLD exemple scintillement.xls
    106.5 KB · Affichages: 99

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Bonjour printanier à Softmama et au forum,

Je n'ai pas examiné ton code à fond. Mais j'ai tenté une expérience. J'ai mis en commentaire tous les 'ScreenUpdating' qu'ils soient True ou False et ensuite relancer une partie. Et là surprise! Sur mon bouzin, plus aucun scintillement, ni en déplacement horizontal (le seul cas qui en provoquait chez moi), ni en chute (mais je n'en avais pas)

Phénomène induit ==> les formes contiennent désormais un nombre (mais comme je le rappelle, je ne me suis pas penché sur le code - pas assez réveillé!)

Je ne sais pas non plus si la configuration matérielle peut ou non interférer dans ce phénomène. testé sous Excel 2010 - Win7.
 

Pièces jointes

  • XLD exemple scintillement v1.xls
    264.5 KB · Affichages: 86

Misange

XLDnaute Barbatruc
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Bonjour
je n'observe pas de scintillement ni dans ton fichier ni dans celui de mapomme qui est cependant plus fluide.
Un pb de carte graphique ?
comme mapomme je suis sous excel 2010 avec win7
 

chris

XLDnaute Barbatruc
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Bonjour

Effectivement quand le nombre de cubes est important l'ajout de nouveaux cubes fait un peu vibrer la pile existante.

Cela ne le fait pas avec la version de mapomme.

Comme mapomme et Misange je suis en 2010 sous Win 7.

Sympa cette idée de style Tetris dans Excel.
 

Softmama

XLDnaute Accro
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Bonjour,

Merci pour vos réponses. En effet, la version de Mapomme ne scintille pas. J'avais pourtant pensé de mon côté à enlever tous les screenupdating du fichier original, mais le scintillement persistait. Ce fichier comporte beaucoup plus de macros que l'exemple que j'ai posté, réparties dans plusieurs modules. Je vais tout regrouper dans un module unique, voir si éventuellement cela proviendrait de là. Je reviens vers vous quand j'aurai effectué quelques tests complémentaires. Merci en tout cas pour cette première piste qui me redonne un peu d'espoir.
 

Softmama

XLDnaute Accro
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Re,

J'ai enlevé tous les screenupdating, et ça scintille grave dès que la moitié de la grille est remplie :(. Je joins le fichier original, voir si quelqu'un a une explication à mon souci. (Le mode contre l'ordi n'est pas fini dans ce fichier, il ne fonctionnera pas. Essayez le mode solo)
 

Pièces jointes

  • Columetris6.zip
    190.6 KB · Affichages: 53

Softmama

XLDnaute Accro
Re : Les AutoShapes font scintiller l'écran, malgré Screenupdating = False (? :p)

Re,

super, j'ai trouvé. Le problème provenait des bordures dans la macro VoisBonus. Je les ai supprimées et tout est nickel. Merci à tous pour m'avoir aiguillé. Je posterai le résultat final quand j'aurais finalisé l'IA de l'ordi. ++ donc
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal