Récupérer le résultat d'un batch

M

marco

Guest
Bonjour,

A partir d'un VBA, je lance un fichier Batch et je voudrais récupérer le résultat de ce Batch dans une variable quelconque.

En fait, je sais donner un argument entrant au batch (%1) mais pas les arguments sortant.

Et impossible de comprendre comment je peux récupérer mon résultat sous Excel

merci a vous

marco
 

Laurent L

XLDnaute Nouveau
Hello,

Une solution un peu 'bricolo' : renvoyer la valeur par l'intermédiaire d'un fichier .log

Par exemple, dans ton fichier BAT, si la valeur que tu veux renvoyer est 'Coucou' :

echo Coucou >C:\\Temp\\Test.log

Remplace C:\\Temp\\Test.log par le chemin d'accès que tu veux.

Et sous VBA :

Code:
Const FichierLog As String = 'C:\\Temp\\Test.log'

Dim Resultat As String
Shell 'C:\\Temp\\MonFichier.bat'
Do Until Dir(FichierLog) <> '': Loop
Open FichierLog For Input As #1
Input #1, Resultat
Close #1
Kill FichierLog
MsgBox 'Valeur renvoyée : ' & Resultat

Cordialement,

Laurent
 

Celeda

XLDnaute Barbatruc
Bonjour,

Juste une petite insertion dans ce post et si erreur sur la personne, toutes mes excuses en espérant que l'auteur ne m'en tiendra pas rigueur :

mais Laurent L ne serait-il pas dans l' Index des Masters VBA = Equivalence à Laurent Longre ?

si c'est le cas, c'est un véritable honneur de te lire et je me permets de te faire une très grande révérence et quel plaisir cette visite sur notre forum

et si ce n'est pas le cas, je te fais quand même une grande révérence et je te remercie aussi pour l'aide.


Celeda
 

Discussions similaires

Réponses
10
Affichages
347
Compte Supprimé 979
C

Statistiques des forums

Discussions
313 030
Messages
2 094 572
Membres
106 054
dernier inscrit
Mohajer