Application.ScreenUpdating = False (ne fonctionne pas)

Le
Daniel
Bonjour à tous

J'ai une macro qui en s'exécutant, je voie défiler à l'écran les étapes.

Même avec ou sans ( Application.ScreenUpdating = ) False au début

et True a la fin de la macro, je vois toujours les étapes.

Comment faire pour que la macro s'exécute en arrière-plan?

Merci :-)

Sub Ouvrirnroute()
MyAppID = Shell("C:Program FilesGarminRouteRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False '--
Application.Wait (Now + TimeValue("00:00:02"))
SendKeys "^w", True ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}", True ' Envoie la combinaison CTRL+tab
SendKeys "{tab}", True ' Envoie la combinaison CTRL+tab
SendKeys "^C", True ' Envoie la combinaison CTRL+c copie sur
presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "%{tab}", True 'Envoie la combinaison CTRL+tab
Dim Presspp As New DataObject
Set Pressp = New DataObject
Presspp.GetFromClipboard 'Récupérer le Presse-papier
Range("h15") = Presspp.GetText
Set Pressp = Nothing
Application.ScreenUpdating = True '--
End Sub
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
Laurent Longre
Le #2834431
Hello,

A tout hasard, essaie LockWindowUpdate :

Declare Function LockWindowUpdate Lib "User32" (ByVal hWnd As Long) As Long

Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Sub Test()

' A la place de ScreenUpdating = False
LockWindowUpdate FindWindowA("XLMAIN", Application.Caption)
' blablalba...
' Pour rétablir l'affichage
LockWindowUpdate 0

End Sub

Cordialement,

Laurent

Bonjour à tous

J'ai une macro qui en s'exécutant, je voie défiler à l'écran les étapes.

Même avec ou sans ( Application.ScreenUpdating = ) False au début

et True a la fin de la macro, je vois toujours les étapes.

Comment faire pour que la macro s'exécute en arrière-plan?

Merci :-)

Sub Ouvrirnroute()
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False '-----------------------
Application.Wait (Now + TimeValue("00:00:02"))
SendKeys "^w", True ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}", True ' Envoie la combinaison CTRL+tab
SendKeys "{tab}", True ' Envoie la combinaison CTRL+tab
SendKeys "^C", True ' Envoie la combinaison CTRL+c copie sur
presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "%{tab}", True 'Envoie la combinaison CTRL+tab
Dim Presspp As New DataObject
Set Pressp = New DataObject
Presspp.GetFromClipboard 'Récupérer le Presse-papier
Range("h15") = Presspp.GetText
Set Pressp = Nothing
Application.ScreenUpdating = True '--------------------
End Sub




Poster une réponse
Anonyme