Comment ouvrir plusieurs fichiers d'un autre programme à partir des macros Excel

LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008 - 10 déc. 2008 à 16:36
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008 - 15 déc. 2008 à 14:49
Bonjour à tout le forum



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Je souhaite ouvrir plusieurs fichiers qui sont complètements extérieurs à Excel, par une macro.


Après quelques recherches, j’ai réussis à faire marcher ce code  sur un bouton-clic:



 




Sub ShellOuvrir()



       Shell """C:\Program Files\Solid Edge V20\Program\Edge.exe"" ""C:\Documents and Settings\ ‘ Nom-du PC’ \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Face AV STD.asm""", vbMaximizedFocus


End Sub



 


 




Donc avec ça, mon bouton m’ouvre bien mon programme et mon fichier.


Cependant, je souhaite qu’il m’en ouvre plusieurs les un après les autres sans pour autant ouvrir à chaque fois le « Edge.exe».



 




Exemple 1 :



 




Sub ShellOuvrir()



       Shell """C:\Program Files\Solid Edge V20\Program\Edge.exe"" ""C:\Documents and Settings\ ‘ Nom-du PC’ \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Face AV STD.asm"" ""C:\Documents and Settings\ ‘ Nom-du PC’ \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Cadre AR STD.asm""", vbMaximizedFocus


End Sub




 


1°) Ouvre SolidEdge


2°) Ouvre mon fichier des « Face AV STD »


3°) N’ouvre pas mon fichier des « Cadre AR STD »



 




Exemple 2 :



 




Sub ShellOuvrir()



       Shell """C:\Program Files\Solid Edge V20\Program\Edge.exe"" ""C:\Documents and Settings\ ‘ Nom-du PC’ \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Face AV STD.asm""", vbMaximizedFocus



     



 Shell """C:\Program Files\Solid Edge V20\Program\Edge.exe"" ""C:\Documents and Settings\ ‘ Nom-du PC’ \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Cadre AR STD.asm""", vbMaximizedFocus



 




End Sub



 




1°) Ouvre SolidEdge


2°) Ouvre mon fichier des « Face AV STD »


3°) Ouvre SolidEdge une seconde fois


4°) Ouvre mon fichier des « Cadre AR STD » (avec quelques bugs mais je ne crois pas que c’est lié)



 




Si quelqu’un peut me dépanner je lui serais éternellement reconnaissant parce que la je craque !!!!!!



 




Cordialement   Le Dumpill

9 réponses

cs_akzo Messages postés 133 Date d'inscription dimanche 23 juin 2002 Statut Membre Dernière intervention 3 janvier 2015 3
11 déc. 2008 à 15:48
bonjour
essaye ceci pour voir

stAppName = "C:\Program Files\Microsoft Office\OFFICE11\winword.exe"    'chemin de l'application


for x = 1 To 2 Step 1                                  'deux fichiers a ouvrir
   If  x 1 Then chemin "C:\cos3x.doc"     'chemin du premier fichier   If  x 2 Then chemin "C:\1.doc"            'chemin du second fichier

stAppName = stAppName & "  " & chemin  
Call Shell(stAppName, vbMaximizedFocus)

Next x

salutation
0
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
11 déc. 2008 à 16:26
Bonjour et merci pour ton aide



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Je viens d’essayer ton code en mettant le chemin de mon programme et de deux de mes assemblages.



 




La macro ouvre deux fois l’EDGE.exe pour que ce dernier me dise « Impossible de trouver le fichier C:\Document. ». Seulement je ne vois pas d’autre chemin possible…..



 




Sub ShellOuvrir()


stAppName = "C:\Program Files\Solid Edge V20\Program\Edge.exe"    'chemin de l'application



 




For x = 1 To 2 Step 1                                  'deux fichiers a ouvrir



 





   If x 1 Then chemin "C:\Documents and Settings\Nom du PC\Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Face AV STD.asm"      'chemin du premier fichier



   If x 2 Then chemin "C:\Documents and Settings\ Nom du PC \Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Assemblage pavillon.asm"             'chemin du second fichier



 





stAppName = stAppName & "  " & chemin





Call Shell(stAppName, vbMaximizedFocus)






 





Next x



 




End Sub



 




Ou bien c’est moi qui fait le « Parpaing » en me plantant ?
0
cs_akzo Messages postés 133 Date d'inscription dimanche 23 juin 2002 Statut Membre Dernière intervention 3 janvier 2015 3
11 déc. 2008 à 16:50
Bonsoir

Retente de mettre les fichiers que tu dois ouvrir sur c:\ 
Car pour moi aussi si j'ai mes fichiers dans mes documents il ne les trouve pas mais j'avous que je ne sais pas trop pourquoi pour le moment

Si en placant tes fichiers a ouvrir sur c:\ et que cela fonctionne on poseras la question pourquoi le chemin n'est pas valable dans mes documents ou peut etre aiileur

salutation
0
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
11 déc. 2008 à 17:14
Rien à faire....Les fichiers sont toujours introuvables même avec un chemin ultra court.......If x 1 Then chemin "C:\Face AV STD.asm"

Je vais tenter avec d'autres fichier d'un autre programme pour voir si cela est générale
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
11 déc. 2008 à 17:46
Non....Même avec un autre programme et des fichiers differents, impossible de les ouvrirs...
0
cs_akzo Messages postés 133 Date d'inscription dimanche 23 juin 2002 Statut Membre Dernière intervention 3 janvier 2015 3
11 déc. 2008 à 18:29
Pourtant avec word ca fonctionne chez moi ,j'ai mis le bout de prog dans excel et je lance bien word avec les deux fichiers ouverts mais demain je tenterais d'ouvrir d'autre type de fichier pour voir et je te tiendrais au courant ,je compte sur toi aussi si tu as du nouveau.
Bonne fin de soirée
0
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
12 déc. 2008 à 08:48
Bonjour Akzo, bonjour le forum

J’ai réussi à ouvrir deux fichiers avec Word et avec Excel par la macro. Je me suis rendus compte qu’il me manquait deux guillemets de chaque coté du chemin en plus de ceux déjà présents. Maintenant il me signale qu’il doit les ouvrir en lecture seule. Donc j’ai quand même fais la manipulation pour l’ouverture de mes assemblages avec mon logiciel de dessin 3D et la rebelote, ouverture en lecture seule avec en prime deux fois le même assemblage dont un où il me perd la moitié des pièces………

je dis pas glop du tout ..mais on avance…..
0
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
12 déc. 2008 à 10:39
Que du bonheur !!! Mes deux fichiers d’assemblage s’ouvrent !!!



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




J’ai modifié le code comme suit pour obtenir ce résultat :


Sub ShellOuvrir()



 




For x = 1 To 2 Step 1                                  'deux fichiers a ouvrir


stAppName = "C:\Program Files\Solid Edge V20\Program\Edge.exe"    'chemin de l'application



         If x 1 Then chemin """C:\Documents and Settings\dhume\Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Face AV STD.asm"""      'chemin du premier fichier



             If x 2 Then chemin """C:\Documents and Settings\dhume\Bureau\Lancement des carrosseries\Dossier Gamme Basse\Fourgon GB\Assemblage pavillon.asm"""             'chemin du second fichier





            stAppName = stAppName & "  " & chemin





               
               Call Shell(stAppName, vbMaximizedFocus)




Next x


End If



 




Mon problème est en partie résolu car il reste un petit détail à régler :



 




Les deux fichiers s’ouvrent dans deux « Edge.exe » différent. Ce qui prend un temps fou d’ouverture et qui n’est pas pratique à l’utilisation. Donc n’y a-t-il pas un moyen de faire s’ouvrir tous les documents dans le même « Edge.exe » 
0
LeDumpill Messages postés 7 Date d'inscription vendredi 5 octobre 2007 Statut Membre Dernière intervention 15 décembre 2008
15 déc. 2008 à 14:49
Bonjour à tous
Encore un problème avec ce code :
 Par exemple, si je lui demande de m’ouvrir deux  fichiers d’assemblages qui ont des chemins différents,

C:\Documents and ……..\Fourgon GB\Laterale\Nouvelle porte latérale\Porte latérale coulissante.asm
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??> 

C:\Documents and ……..\Fourgon GB\Face AV STD.asm

 

Celui dont le chemin est le plus long vat être ouvert sans problème, par contre l’autre vat avoir tous les problèmes du monde comme la perte de pièces. Par contre si je mets ces deux fichiers dans le même répertoire, aucun souci...

La solution serais donc de mètre tout mes assemblages dans le même répertoire mais ceci une opération impossible au vue du temps que cela prendrais.

Bref…Help !!!........
0
Rejoignez-nous