VBA et Batch

kikijoli Messages postés 23 Date d'inscription   Statut Membre Dernière intervention   -  
cchristian Messages postés 921 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Voila j'ai un petit programme batch comme ceci :

@echo off

echo HELLOOOOOOO !!!!

Pause

Et un module VBA comme cela :

Option Explicit
Sub batchman()
Dim myway As String
Dim mon_prenom As String

mon_prenom = "kiki"
MsgBox (mon_prenom)
myway = "D:\batch\mon_code.bat"

End Sub


Et je cherche à faire en sorte que le batch prenne en compte la variable mon_prenom qui provient du module VBA pour l'inclure dans l'echo du batch pour que ça donne au final :

HELLOOOOOOO !!!! kiki

Voila j'espère avoir été assez clair.

Cordialement,
KiKiJoLi
A voir également:

3 réponses

kikijoli Messages postés 23 Date d'inscription   Statut Membre Dernière intervention   2
 
J'y arrive pas...
-1
cchristian Messages postés 921 Date d'inscription   Statut Membre Dernière intervention   131
 
Bonsoir,

Comme je ne connais strictement rien à VBA, je procède par supposition en présumant que le module VBA "active" l'exécution de ton batch (mon_code.bat) à la ligne : myway = "D:\batch\mon_code.bat". Je présume également que VBA est capable de passer des paramètres "ici nom_prenom" à un programme "appelé' ici "mon_code" ou "mon_code.bat" sous une forme quelconque par exemple :
myway = "D:\batch\mon_code.bat {nom_prenom}" ({ce format d'instruction est bien sûr imaginaire})

Une fois ce problème de passation de paramètre(s) VBA résolu il suffit de le(s) récupérer dans le batch "appelé" sous les dénominations : &1, &2, &3, .... &9 (maximum théorique 9 paramètres -- &0 contient le nom du batch activé ici mon_code.)
En ce qui te concerne tu auras dans ton batch la ligne :
echo HELLOOOOOOO !!!! &1

Qui affichera à la console : HELLOOOOOOO !!!! kiki
-1
cchristian Messages postés 921 Date d'inscription   Statut Membre Dernière intervention   131
 
RECTIFICATIF :

Les noms des 10 variables de passation sont %0, %1, ............, %9 et non pas comme je l'ai écrit &0, &1,...............&9.
-1