IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

[VBA]Exécuter une commande Shell


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 31
    Points : 20
    Points
    20
    Par défaut [VBA]Exécuter une commande Shell
    Bonjour,

    je souhaite exécuter une commande shell depuis le code VBA. Il s'agit de lancer un script .bat contenant un code dans ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cd U:\dir\
    prog -a fichier_sortie.txt
    Sachant que la base est dans le dossier U:\dir\ et que l'exécutable "prog" aussi est dans ce fichier. Lorsque je double clic sur mon script.bat les actions se font normalement. Le problème c'est que cela ne fonctionne plus lorsque je lance la commande depuis le code VBA de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim ret As Long
    ret = Shell("U:\dir\script.bat", 1)
    La fenêtre de commande s'ouvre mais le script ne se lance pas...

    Comment résoudre ce problème ?

    merci d'avance
    antoine

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 028
    Points : 24 579
    Points
    24 579
    Par défaut
    Essaye ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell ("cmd /c c:\toto.bat")
    Cordialement,

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 175
    Points : 129
    Points
    129
    Par défaut
    Bonjour,
    je relance ce post car j'ai le même problème et la solution proposée ne fonctionne pas.

    Je récapitule : mon fichier .bat fonctionne très bien
    Par contre quand j'essaie de le lancer via VBA en utilisant l'instruction Shell, je n'ai aucun résultat, ni message d'erreur.

    Please help !




    Je précise que je travaille avec un PC surlequel je n'ai pas tous les droits (réseau d'entreprise oblige !). Est-ce qu'on peut imaginer que les admins aient bloqué ce genre de manip ?
    >> Etant donné que mon fichier .bat s'exécute je ne pense pas... mais bon je ne suis pas spécialiste.

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Je pense que tu dois mapper ton U dans la commande .bat
    Essai de faire un dir u:\ dans un cmd et de le lancer par vba pour voir s'il a acces au U

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2007
    Messages : 184
    Points : 188
    Points
    188
    Par défaut
    Personnellement je procéde ainsi...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim Commande as string
    Commande = "c:\base97\system\CopyDB.bat"
    Shell Commande
    en espérant aider...

    fevec

Discussions similaires

  1. Exécuter une commande Shell avec des espaces à partir du code.
    Par megamario dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 29/06/2015, 13h00
  2. Erreur lors de l'exécution d'une commande shell
    Par dumoulex dans le forum Langage
    Réponses: 12
    Dernier message: 30/06/2011, 16h07
  3. Exécuter une commande shell depuis Eclipse
    Par omsi02 dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 05/02/2010, 10h52
  4. Exécuter une commande shell dans une requête
    Par GLDavid dans le forum Requêtes
    Réponses: 2
    Dernier message: 25/11/2009, 16h06
  5. Exécution d'une commande shell
    Par darklord159 dans le forum Ada
    Réponses: 1
    Dernier message: 31/05/2008, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo