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

Macros et VBA Excel Discussion :

Pb de shell et de "contexte" [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    129
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 129
    Par défaut Pb de shell et de "contexte"
    Bonjour,

    Depuis une macro Excel j'utilise un shell pour lancer une application déjà compilée (application.exe).
    Application.exe créé un fichier texte dans le dossier où il se trouve.

    Or suite à l'exécution via le shell, le fichier texte généré est créé dans "Mes documents".

    D'où cela vient ?
    Comment changer cela, sans modifier l'executable ?

    Mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Call Shell("E:\taff\application.exe", vbNormalFocus)

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Il se peut que ce soit dans l'application que la destination soit inscrite, et si c'est le cas il faut revoir la source de celle-ci.

    Philippe

  3. #3
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 121
    Par défaut
    Salut
    Il me semblait bien avoir vu passer quelque chose de similaire.

    J’espère que ça résoudra ton problème, si ça n'est pas le cas en effet, il nous faudra la source de ton exécutable

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    129
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 129
    Par défaut
    Dans l'application il y a écrit l'adresse de telle manière:

    functiton ecrire "./file.txt"

    Je n'ai pas la fonction exacte (c'est du fortran) et je n'ai pas le code sous les yeux.
    La personne réalisant l'exécutable m'a envoyé le code avec "./file.txt et "file.txt"
    Aucun des 2 ne fonctionne.

    Je viens de tester chdir "adresse du dossier contenant l'exe" pour changer le dossier avant le shell et ça ne fonctionne pas non plus.

    D'autres pistes ?

  5. #5
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Bonjour,
    4 tests à faire jusqu'à problème

    1) Hors excel, tu te mets dans le répertoire de ton .exe et tu le lances pour vérifier que le .txt apparaît bien où tu le veux. Sinon -> Couac appli .EXE ou problème de droits.
    2) Tu prends ton .exe et tu le mets qqpart sur ton disque C:\ et tu refais la même manip.
    3) Tu modifies ton excel pour CHDIR pour utiliser test 2. Si pas ok, tester 4
    4) tu fais un .BAT (ou cmd) ou tu met un CD (change dir) ver ton répértoire de 2 suivi d'un call à ton .EXE.

    Que cela donne-t'il ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    129
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 129
    Par défaut
    1) Hors excel, tu te mets dans le répertoire de ton .exe et tu le lances pour vérifier que le .txt apparaît bien où tu le veux. Sinon -> Couac appli .EXE ou problème de droits.
    2) Tu prends ton .exe et tu le mets qqpart sur ton disque C:\ et tu refais la même manip.
    3) Tu modifies ton excel pour CHDIR pour utiliser test 2. Si pas ok, tester 4
    4) tu fais un .BAT (ou cmd) ou tu met un CD (change dir) ver ton répértoire de 2 suivi d'un call à ton .EXE.
    1 Ca fonctionne (fichier créé à l'emplacement de l'exe)
    2 Ca fonctionne (fichier créé sous C:)
    3 ça me créé toujours les fichier dans "mes documents"
    4 Je n'ai pas compris, je fais cela dans excel ? Peux tu un peu détailler ce point stp

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Shell] Problème avec le Back-quote (ksh)
    Par bob94700 dans le forum Linux
    Réponses: 3
    Dernier message: 27/01/2008, 12h45

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