Probléme Application.Wait
renoncule62
Messages postés
94
Statut
Membre
-
renoncule62 Messages postés 94 Statut Membre -
renoncule62 Messages postés 94 Statut Membre -
Bonjour,
Je souhaite, aprés la saisie dans une cellule, vérifier que celle ci ne contient pas une valeur incluse dans une liste. Si c'est le cas, je souhaite afficher, dans cette cellule, une petite image d'alerte pendant 3 seconde puis, celle-ci disparait.
ci dessous mon code qui ne fonctionne pas puisque ne se déroulant pas comme je le souhaiterais car la tempo s'execute, puis l'image apparait et disparait furtivement.
toujours pas incollable en vba, je vous propose mon code.
Je sais qu' excel ne peut pas faire plusieurs choses à la fois mais dans la chronologie du code ci dessous, j' appelle bien l' image, execute la tempo et suprime l'image non?
et quand je regarde le résultat, j'ai l'impression que l'image s'affiche aprés la tempo et disparait, du coup, tout de suite?
Merci pour votre aide.
J'en profite pour poser une deuxiéme question:
j'ai une macro avec un "Application.ScreenUpdating = False" en tête de code car un peu longue et disgracieuse lors de son exécution. est il possible d'afficher un userform ou message invitant à patienter pendant l'exécution de la macro en arriére plan ?
pouvez vous m'expliquer cette fonction "Application.ScreenUpdating = False" svp?
Meci encore
Je souhaite, aprés la saisie dans une cellule, vérifier que celle ci ne contient pas une valeur incluse dans une liste. Si c'est le cas, je souhaite afficher, dans cette cellule, une petite image d'alerte pendant 3 seconde puis, celle-ci disparait.
ci dessous mon code qui ne fonctionne pas puisque ne se déroulant pas comme je le souhaiterais car la tempo s'execute, puis l'image apparait et disparait furtivement.
toujours pas incollable en vba, je vous propose mon code.
Je sais qu' excel ne peut pas faire plusieurs choses à la fois mais dans la chronologie du code ci dessous, j' appelle bien l' image, execute la tempo et suprime l'image non?
et quand je regarde le résultat, j'ai l'impression que l'image s'affiche aprés la tempo et disparait, du coup, tout de suite?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, Qui As String, Plage As String
Qui = Target
Plage = "b4:b11"
Set Rg = Range(Plage).Find(Qui)
If Not Rg Is Nothing Then
ActiveSheet.Pictures.Insert("monimage.png" ).Select
With Selection.ShapeRange
.Left = Target.Left
.Top = Target.Top
End With
Application.Wait (Now + TimeValue("00:00:03" ))
Selection.delete
Else
MsgBox "Pas trouvé " & Qui
End If
End Sub
Merci pour votre aide.
J'en profite pour poser une deuxiéme question:
j'ai une macro avec un "Application.ScreenUpdating = False" en tête de code car un peu longue et disgracieuse lors de son exécution. est il possible d'afficher un userform ou message invitant à patienter pendant l'exécution de la macro en arriére plan ?
pouvez vous m'expliquer cette fonction "Application.ScreenUpdating = False" svp?
Meci encore
6 réponses
-
Bonjour,
pour répondre à ta seconde question la fonction "Application.ScreenUpdating = False" permet de ne pas voir la macro s'exécuter à l'écran.
Cela évite par exemple de voir défiler les sélections de cellules, les modifications de celles-ci etc.
Cordialement. -
Merci pour cette précision chossette9, c' est sympa...
-
-
Bonjour,
mais pourqoi ma tempo ne fonctionne pas dans mon code??
Merci -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bonjour,
Fais un essai de manière à obliger excel à mettre à jour l'affichage avant le tempo.
Application.ScreenUpdating = False ActiveSheet.Pictures.Insert("monimage.png" ).Select With Selection.ShapeRange .Left = Target.Left .Top = Target.Top End With Application.ScreenUpdating = True
En espérant que ça fonctionne... -
Bonjour,
Excuse la réponse tardive Enzo mais ça marche, merci !
Ceci dit je n'explique pas parfaitement pourquoi ça ne fonctionnait pas mais bon....
Merci encore