Run Macro dans un new Thread ?

grogoin

XLDnaute Nouveau
Bonjour voici le script vbs que j'utilise pour lancer mon programme :

Code:
Dim XL
Set XL = CreateObject("Excel.Application")
XL.Visible = True
XL.Workbooks.Open  "C:\toto.xls"
XL.Run "'C:\toto.xls'!Auto_Ouvrir"
Set XL = Nothing

Mais mon problème est que le script ne reprend pas la main après le run.
Enfin il attend que l’exécution de la macro soit fini.
Ma macro peut être amener a kill le process lancé.
Si le process est kill alors quand mon VBS "reprend la main" il plante a la ligne du run.

Donc j'aimerai bien faire mon Run dans un nouveau thread.
Comment faire ?


Je ne sais pas si c'est très facile a comprendre... :)
Bonne journée
 
Dernière édition:

PMO2

XLDnaute Accro
Re : Run Macro dans un new Thread ?

Bonjour,

En retardant le lancement de la macro avec un OnTime

Code:
Dim XL 
Set XL = CreateObject("Excel.Application")
XL.Visible = True
XL.Workbooks.Open "c:\toto.xls" 'à adapter
XL.Application.OnTime Now + TimeValue("00:00:04"), "'C:\toto.xls'!Auto_Ouvrir"
Set XL = Nothing

'--- Ouvre la calculatrice (pour illustrer la reprise en main du script) ---
Dim myShell
Set myShell = CreateObject("WScript.Shell")
myShell.Run "calc" , 1, true

Voir l'exemple dans la pièce jointe. Le classeur toto.xls doit être dans C:\
 

Discussions similaires

Réponses
3
Affichages
886

Statistiques des forums

Discussions
312 207
Messages
2 086 232
Membres
103 161
dernier inscrit
Rogombe bryan