Ecran en partie noir à l'exécution d'une macro

  • Initiateur de la discussion Initiateur de la discussion Sebast
  • 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 !

Sebast

XLDnaute Impliqué
Bonjour,

Quand je lance une macro, je fais "patienter" en affichant un onglet comportant un texte du genre "Exécution du programme ..." et quelques secondes plus tard, la macro ouvre un fichier verrouillé, si bien que s'affiche une fenêtre me demandant le mot de passe. Après avoir validé le mot de passe, la macro continue mais à l'emplacement de la fenêtre apparaît un rectangle noir. Si je veux déplacer ce rectangle, il se produit un phénomène comme si j'essuyais l'écran avec une éponge ...
Je précise que j'ai bien évidemment placé l'instruction Application.screenupdating = false

Les données traitées ne sont pas de taille négligeable mais pas non plus monstrueuses.
Est-ce un problème lié à VBA ou plus simplement à mon ordi (pourtant récent, avec 1,75 de RAM) ?

Merci d'avance pour vos lumières
 
Re : Ecran en partie noir à l'exécution d'une macro

Bonjour,

rétablis le rafraichissement d'écran juste avant l'affichage de la msgbox :
Code:
Application.ScreenUpdating = True
'ta boite de dialogue
Application.ScreenUpdating = False

bonne journée
@+
 
Re : Ecran en partie noir à l'exécution d'une macro

Bonjour Sebast,

En fait, c'est l'instruction "ScreenUpdating=False" qui fait que ton écran n'est pas rafraîchi après validation de la saisie du mot de passe.

Pour éviter ce problème, dans la macro, il te faut mettre juste après l'ouverture du fichier :
VB:
Application.ScreenUIpdating=True
Application.ScreenUpdating=False

Ainsi, le refraichissement se fera et effacera ta zone noire, avant de continuer.

A+
 
Re : Ecran en partie noir à l'exécution d'une macro

Bonjour Pierrot93 et Fred0o,

en fait j'avais voulu écrire bien évidemment que je mets le critère Application.screenupdating sur True, mais je ne le positionnais que en début de programme, pas en encadrement de mon ouverture de fichier, comme vous me le suggérez.

Comme un fait exprès, pour voir précisément où je dois écrire ces instructions, j'ai lancé la macro et là plus d'écran noir (bien que je n'ai pas encore placé ces instructions ...) !!! Allez comprendre ... peut-être est-ce dû au fait que contrairement aux autres fois, j'ai fermé toutes les autres fenêtres.
Je conserve néanmoins vos remarques et rectifie ma macro.

Encore merci pour votre rapidité et la pertinence de vos réponses
 
- 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
Retour