Bonjour à tous,
Tout d'abord désolé, j'imagine que c'est un topic récurrent, mais j'ai regardé partout (MSDN, tutos, forumS) à propos de la commande Shell, du CMD, des fichiers batch, j'ai fait quelques tentatives et j'avoue que je suis un peu en panique...
La situation :
Mon fichier Excel (avec mes macros) et mes deux executables (logiciel_1.exe et logiciel_2.exe) se situent dans le même répertoire C:\Documents and Settings\gautier.b\Bureau. Les deux executables sont largement indépendants et je ne les ferai pas tourner en même temps, mais comme ils n'ont pas le même fonctionnement j'expose ce que je souhaite faire dans chacun de leur cas (dans les deux cas ces deux logiciels réclament un fichier d'entrée et génèrent un ou plusieurs fichiers de sortie).
1) Pour le 1er logiciel, je le lance comme ceci
Shell ActiveWorkbook.Path & "\logiciel_1.exe", vbNormalFocus
Ce logiciel s'exécute dans une fenêtre du CMD où il affiche une première question (Nom du fichier d'entrée ?), à laquelle je dois répondre dans la ligne de commande suivante (entree_1.txt). Je n'arrive pas à la remplir autrement qu'à la main. Trois autres questions du même genre suivront.
2) Pour faire fonctionner le 2ème logiciel (je répète : aucun rapport avec le précédent), je dois lancer le CMD, que je fais comme ceci :
Shell "CMD.exe /K", vbNormalFocus
Le CMD se place alors automatiquement dans le répertoire E:\DONNEES\gautier.b\APPSDATA\Microsoft\Macros complémentaires> (?!)
Ce que je souhaite alors faire, mais je n'y arrive pas, c'est
a. me placer dans le répertoire C:\Documents and Settings\gautier.b\Bureau
b. lancer ce 2ème logiciel qui exige une commande avec la syntaxe suivante
logiciel_2 <fichier_d_entree.txt> fichier_de_sortie.txt
Merci de votre aide J'accueille toutes les réponses possibles à bras ouverts (AppWindow, batch, etc.) !! J'imagine que celui (ou celle) qui arrive à répondre à cette question peut directement transformer sa réponse en FAQ ou en tuto !
Gautier
Partager