Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2361 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  ouverture multi applis excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ouverture multi applis excel

n°1578584
speedest
Posté le 24-06-2007 à 21:21:25  profilanswer
 

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.  :pfff:  
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..  :cry:  
 
Donc si vous avez la solution .. merci  :wahoo:  

mood
Publicité
Posté le 24-06-2007 à 21:21:25  profilanswer
 

n°1578585
jpcheck
Pioupiou
Posté le 24-06-2007 à 21:28:33  profilanswer
 

il faut pas faire un petit New quelque part ?

n°1578600
speedest
Posté le 24-06-2007 à 22:40:33  profilanswer
 

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.

n°1579037
speedest
Posté le 25-06-2007 à 20:50:58  profilanswer
 

c'est dingue ça, jamais personne n'a réponse à mes questions, moi qui me croyais bas dans l'échelle des programmeurs

n°1579071
jpcheck
Pioupiou
Posté le 25-06-2007 à 22:40:27  profilanswer
 

fais un objexcel1 et un objexcel2, ca supprime tes pb en principe ;)
 
 
 

n°1579976
speedest
Posté le 27-06-2007 à 15:58:03  profilanswer
 

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 ?

n°1580887
Profil sup​primé
Posté le 29-06-2007 à 16:36:19  answer
 

speedest a écrit :

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 ?


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..

n°1581298
speedest
Posté le 01-07-2007 à 21:31:02  profilanswer
 

Petite lacune d'excel alors dirons-nous..


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  ouverture multi applis excel

 

Sujets relatifs
récupérer des données d'un "multi" formulaireenvoi "non automatique" d'un doc excel email VIA lotus
Générer Excel avec VB sans ExcelPb Formule bateau Excel
fonction SQL dans macro excel[VBA Excel]Passage d'une variable d'un Userform à un autre
connection ODBC Persistante sous Excelcopier coller cellule excel dans word à partir d'excel
Faire un ping sous excelProblème macro excel
Plus de sujets relatifs à : ouverture multi applis excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR