Fermer un Popup au bout d'un certain temps

modus57

XLDnaute Occasionnel
Bonjour à tous. :D:confused:

Petit souci avec un Popup que se ferme pas.
Code:
CreateObject("Wscript.shell").popUP "Ce message se fermera dans 3 secondes", 3, "Titre de la fenêtre", 64
Quelle est l'astuce ?

Merci d'avance pour votre réponse. ☼
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Fermer un Popup au bout d'un certain temps

Re

Question toute bête du dimanche matin:
As-tu essayer de nouveau dans Excel
Code:
Sub a()
CreateObject("Wscript.shell").popup "Ce message se fermera dans 3 secondes", 3, "Titre de la fenêtre", 64
End Sub
Ça continue à ne pas se fermer automatiquement?

Puisque le popup.vbs fonctionne a priori cela devrait fonctionner dans Excel aussi.


Tu peux essayer en cochant la référence : Microsoft Scripting Runtime.
Mais tel qu'était écrit le code ce n'est pas nécessaire.
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Fermer un Popup au bout d'un certain temps

Bonjour Paritec

Bonjour à tous
il n'a pas un screenupdating à false avant de lancer son msgbox???
a+
papou:eek:

Cela n'a aucune incidence
Code:
Sub BB()
Application.ScreenUpdating = False
CreateObject("Wscript.shell").popup "Ce message se fermera dans 3 secondes", 3, "Titre de la fenêtre", 64
End Sub
Chez moi, le MsgBox se ferme bien.
 

Staple1600

XLDnaute Barbatruc
Re : Fermer un Popup au bout d'un certain temps

Re

modus57
Merci pour le lien.
Il y a donc bien un bug quand on utilise ce bout de WHS dans VBA.
En lisant les commentaires sur le site ( cf lien cité par Modus57)
Il y a cette fonction qui permet se simplifier la vie et de paramétrer facilement le popup
Code:
Sub Test()
    MsgTimed "Test Message", 3, "Alert", vbInformation
End Sub

Code:
Private Function MsgTimed(Message As String, Optional Seconds As Integer = 5, _
    Optional Title As String = "", Optional Options As Integer = 0)
'   Displays a message box for a predetermined duration then auto closes it.
'   Uses the same syntax as the built-in Popup function referenced on the page below...
'       [I]Ce lien n'existe plus[/I]
    CreateObject("WScript.Shell").Run "mshta.exe vbscript:close(CreateObject(""WScript.Shell"")" _
        & ".Popup(""" & Message & """," & Seconds & ",""" & Title & """," & Options & "))"
End Function
 

MJ13

XLDnaute Barbatruc
Re : Fermer un Popup au bout d'un certain temps

Bonjour à tous

Merci à tous pour vos solutions qui m'ont permis de trouver le code que je recherchai depuis longtemps pour XL 2013.

Code VBA:
Sub PopupXL2013()
'http://stackoverflow.com/questions/4274103/whats-the-best-way-to-display-a-message-box-with-a-timeout-value-from-vba
CreateObject("WScript.Shell").Run "mshta.exe vbscript:close(CreateObject(""WScript.Shell"").Popup(""Test"",2,""Real%20Time%20Status%20Message""))"
End Sub
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 508
Messages
2 089 143
Membres
104 048
dernier inscrit
Noni