Raffraichisement

cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005 - 17 mai 2004 à 11:25
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005 - 17 mai 2004 à 14:27
comment fait on pour supprimer le raffraichisement de l'ecrant lors de l'execution d'une macro

merci d'avance

9 réponses

Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
17 mai 2004 à 11:27
Tu travailles dans quoi ? Excel, Access, Word .....

Il faut le préciser !!!

Guy
0
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005
17 mai 2004 à 11:37
c vrai dsl pour cette oublie
c'est une macro excel
0
Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
17 mai 2004 à 12:26
Re ;O)

En précisant ca devient plus facile pour celui qui lit...

Donc, en ce qui me concerne je ferais ainsi:

'----A coller dans l'ent-ête du module où ta macro est déclarée:----

Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long
Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

'-------------------

'Imaginons que ceci est ta macro :

Sub Macro1()

Dim Hwnd As Long

'On capture le handle de la fenêtre Excel
Hwnd = FindWindowA(vbNullString, Application.Caption)
'On empêche le rafraichissement de la fenêtre en passant le Handle de la fenêtre Excel à la fonction API LockWindowUpdate
LockWindowUpdate Hwnd

'Le code de ta macro....

'On rétabli le rafraîchissement de la fenêtre
'Ne pas oublier !!!!
LockWindowUpdate False


End Sub

Guy
0
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005
17 mai 2004 à 13:07
ben merci je v essayer mais je n'y connai rien de rien en vb donc j'aurai pe etre encore besoin de ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005
17 mai 2004 à 13:48
ques ce que tu entand par entete du module où ta macro est déclarée

car comme je t dit je n'y connai rien
0
cs_cheyenne Messages postés 693 Date d'inscription samedi 18 mai 2002 Statut Membre Dernière intervention 17 avril 2017 2
17 mai 2004 à 14:04
Bonjour,

Si l'on travaille avec Excel on peut utiliser :

Application.ScreenUpdating = False

Les cellules sont mises à jour une fois la macro terminée et empêche en outre l'affichage des différentes feuilles lorsque celles-ci sont appelées. D'où gain de temps.

Avant de quitter la macro il faut mettre : Application.ScreenUpdating = True

Ce n'est pas obligatoires car avec certaines versions le fait de quitter la macro réinitialise le ScreenUpdating à True. A voir...

Cheyenne
0
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005
17 mai 2004 à 14:12
et la syntax par rapport au reste du code de la macro????
0
cs_cheyenne Messages postés 693 Date d'inscription samedi 18 mai 2002 Statut Membre Dernière intervention 17 avril 2017 2
17 mai 2004 à 14:18
Quelle syntaxe ?

Private Sub Macro1()
Application.ScreenUpdating = False

----
----
----

Application.ScreenUpdating = True
End Sub

OK ?

Cheyenne
0
cs_lu6fer Messages postés 131 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 21 juillet 2005
17 mai 2004 à 14:27
ok merci
0
Rejoignez-nous