VBA Solidworks,MsgBox qui se ferme automatiquement

Bonjour à tous,

J'ai trouvé cette ligne de commande en VBA initialement utilisée sous Excel :  (ici : https://excel-malin.com/codes-sources-vba/msgbox-qui-se-ferme-automatiquement/)

CreateObject("WScript.Shell").Popup "Contenu de la boîte de dialogue...", 5, "Titre de la boîte de dialogue"    //5 étant ici la durée théorique en secondes

afin de réaliser des macros avec des messages fugitifs (temporisation réglable).

Sous Excel ça fonctionne à peu près (la tempo n'est pas franchement respectée), mais pas sous solidworks??? la fenêtre s'affiche mais ne disparaît pas...

Y-a-t-il une alternative permettant de faire disparaitre ce message au bout de quelques secondes afin de ne pas bloquer la macro?

Y-a-t-il une fonction à activer dans solidworks pour que cette commande fonctionne?

Pour info, mes macros sont simples et ne requièrent pas (pour le moment) l'utilisation de form avec boutons.

Pouvez-vous m'aider?

Cordialement,

Thierry


boite_fugitive.swp

Bonjour;

Une piste à creuser  (je n'ai pas testé). 
Sous solidworks la plupart des messages ne sont pas sous la forme : msgbox(Message, Icon, Buttons)
mais le plus souvent : SendMsgToUser2(Message, Icon, Buttons)

Cordialement.

Ne fonctionne effectivement pas sous solidworks, même en activant la référence Microsoft Shell.

Le popup s'affiche mais reste jusqu'à la validation.

Peut-être une limitation du logiciel interdisant ce genre de popup qui était si désagréable dans un navigateur internet.

Je pense que le seule moyen d'afficher un message temporaire sera la solution que tu ne souhaite pas avec un form.

Bonjour sbadenis,

Merci pour votre réponse.

C'est malheureusement ce que je crains, même si ce n'est pas trop compliqué à faire je trouve dommage qu'une commande "toute faite" ne fonctionne qu'à moitié sur SW2021 et qu'elle fonctionne complètement sur Excel 2013, même si la tempo n'est pas précise...

Je pense dans ce cas faire une fonction en asynchrone, à moins qu'il y ait une fonction tempo qui existe.

Cordialement.

Bonjour à tous,

Je réponds à ma propre question pour faire partager.

C'est juste un compteur qui boucle tant qu'il n'a pas atteint la valeur demandée.

Ce n'est pas à la seconde près et varie selon la puissance du PC mais ça fait le taf.

Cordialement.


boite_fugitive.swp