call shell

Le
Macgiver
Bonjour a tous, j'essai de faire une commande call shell en vba avec
plusieurs paramètres mais ça ne fonctionne pas. Voici ma commande :
dim stAppName as String
dim test2 as Variant
dim prog as Variant

test2 = Chr(34) & " cdbd_mrc " & Chr(34)
prog = Chr(34) & " dir " & Chr(34)

stAppName = "c:windowssystem32cmd.exe /K " & " " & test2 & " " & prog
Call Shell(stAppName, 1)

mon test consiste a ouvrir une fenetre dos, me déplacer dans un dossier et
de faire un dir dans cette même fenêtre dos mais ça ne marche pas. Si
j'essais avec un parametre ça fonctionne mais dès que j'en met 2 plus rien
ne fonctionne, j'obtiens une erreur de syntaxe.

pouvez-vous m'Aider svp
merci
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Michel_D
Le #6366271
Bonjour,

"Macgiver"
Bonjour a tous, j'essai de faire une commande call shell en vba avec
plusieurs paramètres mais ça ne fonctionne pas. Voici ma commande :
dim stAppName as String
dim test2 as Variant
dim prog as Variant

test2 = Chr(34) & " cdbd_mrc " & Chr(34)
prog = Chr(34) & " dir " & Chr(34)

stAppName = "c:windowssystem32cmd.exe /K " & " " & test2 & " " & prog
Call Shell(stAppName, 1)

mon test consiste a ouvrir une fenetre dos, me déplacer dans un dossier et
de faire un dir dans cette même fenêtre dos mais ça ne marche pas. Si
j'essais avec un parametre ça fonctionne mais dès que j'en met 2 plus rien
ne fonctionne, j'obtiens une erreur de syntaxe.

pouvez-vous m'Aider svp
merci


dim stAppName as String
stAppName = "cmd.exe /K cd bd_mrc & dir"
Call Shell(stAppName, 1)

Ou

dim stAppName as String
stAppName = "cmd.exe /K dir bd_mrc"
Call Shell(stAppName, 1)

Macgiver
Le #6366241
merci ça fonctionne, maintenant si je veux lancer une commande dos avec des
paramètre dans cette commande dois-je mettre des " " ou utiliser une autre
syntaxe. par exemple faire un rename ancienfichier nouveaufichier comment
dois-je m'y prendre? puis-je me déclarer une variable pour ancienfichier et
nouveaufichier et ensuite appeler ces variable dans mon stAppName??

merci


"Michel_D" news: fn5233$a37$
Bonjour,

"Macgiver" news:
Bonjour a tous, j'essai de faire une commande call shell en vba avec
plusieurs paramètres mais ça ne fonctionne pas. Voici ma commande :
dim stAppName as String
dim test2 as Variant
dim prog as Variant

test2 = Chr(34) & " cdbd_mrc " & Chr(34)
prog = Chr(34) & " dir " & Chr(34)

stAppName = "c:windowssystem32cmd.exe /K " & " " & test2 & " " & prog
Call Shell(stAppName, 1)

mon test consiste a ouvrir une fenetre dos, me déplacer dans un dossier
et
de faire un dir dans cette même fenêtre dos mais ça ne marche pas. Si
j'essais avec un parametre ça fonctionne mais dès que j'en met 2 plus
rien
ne fonctionne, j'obtiens une erreur de syntaxe.

pouvez-vous m'Aider svp
merci


dim stAppName as String
stAppName = "cmd.exe /K cd bd_mrc & dir"
Call Shell(stAppName, 1)

Ou

dim stAppName as String
stAppName = "cmd.exe /K dir bd_mrc"
Call Shell(stAppName, 1)




Michel_D
Le #6366211
merci ça fonctionne, maintenant si je veux lancer une commande dos avec des
paramètre dans cette commande dois-je mettre des " " ou utiliser une autre
syntaxe. par exemple faire un rename ancienfichier nouveaufichier comment
dois-je m'y prendre? puis-je me déclarer une variable pour ancienfichier et
nouveaufichier et ensuite appeler ces variable dans mon stAppName??

merci


dim stAppName as String
dim ancienfichier as String
dim nouveaufichier as String

ancienfichier = "ancienfichier.ext"
nouveaufichier = "nouveaufichier.ext"
stAppName = "cmd.exe /K ren " & ancienfichier & " " & nouveaufichier
Call Shell(stAppName, 1)

PS:et pour avoir l'aide sur Rename, faire Ren /?

Michel_D
Le #6366201
merci ça fonctionne, maintenant si je veux lancer une commande dos
avec des paramètre dans cette commande dois-je mettre des " " ou
utiliser une autre syntaxe. par exemple faire un rename ancienfichier
nouveaufichier comment dois-je m'y prendre? puis-je me déclarer une
variable pour ancienfichier et nouveaufichier et ensuite appeler ces
variable dans mon stAppName??

merci


dim stAppName as String
dim ancienfichier as String
dim nouveaufichier as String

ancienfichier = "ancienfichier.ext"
nouveaufichier = "nouveaufichier.ext"
stAppName = "cmd.exe /K ren " & ancienfichier & " " & nouveaufichier
Call Shell(stAppName, 1)

PS:et pour avoir l'aide sur Rename, faire Ren /?



J'ai répondu un peu vite car si c'est pour renommer un fichier, il
serait préférable d'utiliser l'objet Scripting.FileSystemObject.


Publicité
Poster une réponse
Anonyme