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 :

Utilisation de commandes Shell [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut Utilisation de commandes Shell
    Bonjour et si ce n'est pas trop tard bonnes fêtes à tous.

    À l'aide de Shell, je voudrais savoir si il possible de lancer l'exécution d'un programme (.exe) si celui-ci est situé sur un autre serveur/machine distante.

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        cmdLine = sFullPathEXE & sFullPathInput & sFullPathOutput & sParameters
     
        res = Shell(cmdLine, vbMinimizedNoFocus)
    Où dans cet exemple on pourrait avoir sFullPathEXE="\\Server1\Chemin\MyExec.exe".

    Merci pour vos réponses.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour:
    que donne le résultat du test?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Bonjour,
    Je n'ai pas de réseau sur place pour le tester.
    cependant, mon client me dit que cela ne fonctionne pas.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    ton exe fait il objet d'une installaton (setup) ou d'un framork (.net).

    Utilise t elle des dll,des ocx ou le VBRun de vb6. Tous ces cas de figures obligent une installation sur la machine!

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    peux-tu t'assurer que chaque élément de ta ligne de commande est bien séparé des autres par une espace =)
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Bonjour.

    Je remercie tous ceux qui s'intéressent à ma question.

    @rdurupt :
    Non, l'utilitaire ne nécessite pas d'intallation machine. Il s'agit du shareware "Pdftools.exe" en ligne de commande.

    @jpcheck :
    Je suppose qu'en locale la syntaxe est parfaitement réalisée puisque pour le moment mon appli a parfaitement fonctionné en local.
    Concernant l'utilisation avec des serveurs; je ne peux pas être certain que les chemins aient été parfaitement paramétrés par mon client.

    Je pense que le réseau est constitué de pc +/- récents certains fonctionnant peut-être encore sous XP.

    Les véritables questions sont :
    1. Est-ce que la commande Shell est capable de lancer un exécutable situé sur un autre ordinateur d'un réseau ?
    2. Est-ce que "Pdftools" est capable de prendre des fichiers d'entrée et de sortie situés sur d'autres ordinateurs d'un réseau ?

    Cordialement.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     cmdLine = sFullPathEXE & sFullPathInput & sFullPathOutput & " " & chr(34) & sParameters & chr(34)
    attention au espace dans une commende DOS si c'est le cas encadre la commende avec ["] chr(34)

    de plus le gratuit ne dit pas pas d'install!

    Refais ke test en tappant la commande dans une fenêtre DOS!

    Némarer executé cmd
    Dernière modification par AlainTech ; 29/12/2013 à 12h02. Motif: Suppression de la citation inutile

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    @rdurupt :
    Cela a été fait !

    (Mes espaces et mes """ sont contenus dans les variables textes et le tout fonctionne bien depuis des mois, MAIS en local.)

  9. #9
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par JOHN14 Voir le message
    @rdurupt :
    Cela a été fait !

    (Mes espaces et mes """ sont contenus dans les variables textes et le tout fonctionne bien depuis des mois, MAIS en local.)
    j’imagine mais on n'est sur un réseau, il faut vérifier si la syntaxe local s’applique au réseau; si le chemin de l'application est valide voir si les droits sont accordé; si il y a des espaces; vérifier que tu peux accéder au répertoire avec l'explorateur WINDOWS;

    si tu n'exécute pas dans une fenêtre DOS, avec la bonne syntaxe la commande shell ne fonctionnera pas car elle fait la même chose elle ouvre un DOS!

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Actuellement, je ne peux pas le vérifier à nouveau.

    Mais il y plusieurs mois j'ai fait faire à mon client des tests avec CMD.
    Il semble que cela ne fonctionne pas.

    Il semble que d'autres commande DOS ne fonctionnent pas non plus sur les réseaux. Je pense à "XCOPY" par exemple.

    L'idée qu'il y a derrière pour contourner ce problème serait peut-être de lancer le CMD local avec quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Shell "\\Server1\[...]\cmd.exe/c" &" " &"\\Server1\Chemin\MyExec.exe MyParameters"
    Est-ce que "Shell" est capable de lancer un exécutable situé sur un autre ordinateur d'un réseau ?

  11. #11
    Invité
    Invité(e)
    Par défaut
    la commande shell fonctionne quelque soit la version.
    ceci dit il es possible, en fonction du Windows que la commande que tu exécute se face en 32 ou 64 bite Exemple pour VBCRIPT (Cscript.exe):
    Code Fichier Bat 64 bits : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\WINDOWS\SysWOW64\Cscript.exe %1

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

Discussions similaires

  1. Utiliser des commandes linux dans un shell
    Par Info_76 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 20/03/2008, 12h03
  2. Réponses: 2
    Dernier message: 16/12/2006, 17h37
  3. Erreur utilisation des commandes shell
    Par paolo2002 dans le forum Windows XP
    Réponses: 7
    Dernier message: 05/11/2006, 14h09
  4. utilisation des commandes shell dans un programme C
    Par rasgueados dans le forum Linux
    Réponses: 15
    Dernier message: 03/08/2006, 17h25
  5. Utiliser les commandes du shell bash
    Par man in the hill dans le forum Linux
    Réponses: 3
    Dernier message: 20/07/2006, 10h43

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