J’ai un formulaire en VBA et j’aimerais lancer en “tache de fond” un programme dans un thread différent pour ne pas bloquer l’utilisation du formulaire…
Le but est que l’utilisateur puisse continuer à utiliser le formulaire pendant que l’application lancée tourne: je pensais donc à lancer l’application dans un nouveau thread mais je ne trouve aucune info là-dessus sur le net (ou plutôt plusieurs personnes pensent que ce n’est pas possible)
—> est ce que qq’un sait si on peux lancer un thread avec VBA?
—> qq’un aurait-il une solution (autre que lancer un nouveau thread) à mon pb?
J’ai été élevé au grain donc avec les API, un timer en vb, je l’ai toujours fait avec SetTimer et le WndProc qui va bien qui va traiter le message WM_TIMER.
Edité le 22/12/2007 à 21:33
Ravi pour Toi.
Mais je persiste et signe qu’un Thread sous VB c’est vouloir équiper un 2 CV avec un V8 et la faire disputer une course en GT…
Je suis d’accord avec Toi, excel aussi te permets de faire des appli en tache de fond
Mais pour notre poster (qu’on oubli un peu), la demande est de savoir s’il peut lancer un tache de fond
sur son formulaire tout en ne bloquant pas le ou les utilisateurs en VBA.
en toute simplicité, je réponds Non, car il à de grande chance d’avoir des plantages…car dans VB il faut des “timer” en pacaille,
contrairement a c++
Je ne connais pas suffisamment le VBA mais en VB, nul besoin d’utiliser un timer pour créer une thread, ça fonctionnait sans le moindre problème et sans aucun plantage.
Merci pour vos réponses!
KarlKox: pourrais-tu me donner qqs lignes de codes pour créer un thread? J’utilise VBA 6.3 donc ça devrait être simple mais je n’ai rien trouver…
vyger: tu as 100% raison, mais je ne peux pas faire autrement qu’en VBA pour l’instant.
Je connais via les Api, il suffit d’utiliser CreateThread et de passer l’addressof de ta fonction à threader, ne pas oublier un TerminateThread en quittant.
Regarde dans la doc les fonctions natives, je pense que ce serait plus efficace et plus stable.
KarlKox: encore une fois, merci.
J’essaierais tout cela à mon retour de vacances en 2008 et vous tiens au courant. Grâce à tes noms de fonctions, j’ai trouvé qqs sites qui en parlent (http://www.developpez.net/forums/showthread.php?t=56512)