ouverture multi applis excel - VB/VBA/VBS - Programmation
Marsh Posté le 24-06-2007 à 22:40:33
c'est-à-dire ??
en fait je ne suis pas un expert en prog, je fais juste quelques trucs.
donc il y a beaucoup de choses que je ne connais pas.
Marsh Posté le 25-06-2007 à 20:50:58
c'est dingue ça, jamais personne n'a réponse à mes questions, moi qui me croyais bas dans l'échelle des programmeurs
Marsh Posté le 25-06-2007 à 22:40:27
fais un objexcel1 et un objexcel2, ca supprime tes pb en principe
Marsh Posté le 27-06-2007 à 15:58:03
j'ai fait :
'--------------------------------------------------
Set obexcelapp1 = CreateObject("excel.application" )
obexcelapp1.application.Visible = True
obexcelapp1.workbooks.Open ("fichier1.xls" )
obexcelapp1.Application.Run("auto_open" )
'--------------------------------------------------
Set obexcelapp2 = CreateObject("excel.application" )
obexcelapp2.application.Visible = True
obexcelapp2.workbooks.Open ("fichier2.xls" )
obexcelapp2.Application.Run("auto_open" )
'--------------------------------------------------
et c'est toujours le même problème, ça passe à la deuxième appli et donc à la deuxième macro uniquement quand la première macro a fini son job.
vais-je vraiment devoir faire 2 vbs séparés ?
n'existe-t-il donc aucun moyen de lancer deux macros pour qu'elles tournent en parallèlle l'une en même temps que l'autre ?
Marsh Posté le 29-06-2007 à 16:36:19
speedest a écrit : j'ai fait : |
Pas si les fonctions/procédures que tu utilises sont en mode synchrone (elle passe à la ligne suivante une fois l'execution finie).
Et c'est le cas ici..
Marsh Posté le 24-06-2007 à 21:21:25
Bonjour,
Mon problème est le suivant :
je souhaiterais trouver un moyen (VBS avec excel de fermé ou VBA avec excel d'ouvert) d'ouvrir 2 applis excel différentes avec leur macros (auto-open ou à lancer) respectives, ceci afin de faire fonctionner deux macros qui font leur boulot indépendamment l'une de l'autre, mais en même temps.
En résumé : un dble-click sur un VBS ou simple click (bouton sous excel) me lance deux applis excel avec dans chaque appli sa propre macro qui s'est lancée.
J'ai cherché tout l'après-midi et là je sature.
En VBS j'ai fait ceci :
'--------------------------------------------------
1 Set obexcelapp = CreateObject("excel.application" )
2 obexcelapp.application.Visible = True
3 obexcelapp.workbooks.Open ("F:\File_1.xls" )
4 obexcelapp.Application.Run("auto_open" )
'--------------------------------------------------
5 Set obexcelapp = CreateObject("excel.application" )
6 obexcelapp.application.Visible = True
7 obexcelapp.workbooks.Open ("F:\File_2.xls" )
8 obexcelapp.Application.Run("auto_open" )
'--------------------------------------------------
Et ça ne fait pas ce que je veux.
Car ça passe à la ligne 5 uniquement quand la macro lancée en ligne 3 a fini.
Je croyais que le VBS se fichait de savoir si la macro lancée en 3 avait fini ou pas, que désormais c'était le problème de excel (une sorte de transfert de tâche, "tiens toi je te dis de faire ça, maintenant tu te débrouilles, moi je passe à autre chose" ) et que donc il passait à ce qui suivait, mais non, il attend que la macro ait fini..
Donc si vous avez la solution .. merci