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

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : mai 2013
    Messages : 42
    Points : 37
    Points
    37

    Par défaut Déclencher un script SHELL depuis VBA

    Bonjour,

    Je cherche a copier un fichier sur un serveur distant depuis mon application VBA.
    J'ai commencé par essayer de copier un fichier d'un dossier à un autre mais cela ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
     
    vUrlDeux = ThisWorkbook.Path & "\Automation\CAL\"
     
     'appel de la fonction qui permet de créer un dossier a la date du jour et les fichiers .cal
                newFileInFolder vNomFichierDeux, vUrlDeux, 1
     
     
                'Ouverture du fichier
                Open vUrlDeux & "calendrier_recette_mens.cal" For Output As #1
                ' j'écris dans mon fichier vUrlMen
                Print #1, vDateMen
                'fermeture du fichier
                Close #1
     
    Shell ("cp " & vUrlDeux & "calendrier_recette_mens.cal " & ThisWorkbook.Path)
    J'aurais besoin d'une aide pour pouvoir avancer

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    13 724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2007
    Messages : 13 724
    Points : 28 148
    Points
    28 148

    Par défaut

    Citation Envoyé par joss_villiers Voir le message
    J'ai commencé par essayer de copier un fichier d'un dossier à un autre mais cela ne fonctionne pas
    Si tu es en Windows (donc un pseudo MS-DOS), l'instruction pour copier est COPY.
    CP, c'est pour Unix ou ses variantes.
    A lire : https://fr.wikipedia.org/wiki/Commande_DOS
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : mai 2013
    Messages : 42
    Points : 37
    Points
    37

    Par défaut

    Citation Envoyé par Menhir Voir le message
    Si tu es en Windows (donc un pseudo MS-DOS), l'instruction pour copier est COPY.
    CP, c'est pour Unix ou ses variantes.
    A lire : https://fr.wikipedia.org/wiki/Commande_DOS

    J'ai utilsé COPY merci pour ton apport mais le problème mon script plante toujours au niveau de la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Shell ("COPY " & vUrlDeux & "calendrier_recette_mens.cal " & ThisWorkbook.Path)
    pourtant je fais COPY urlFichier urlFichierCopie

    Je suis un peu perdu du coup

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    13 724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2007
    Messages : 13 724
    Points : 28 148
    Points
    28 148

    Par défaut

    Déjà, essaye d'être un peu plus descriptif dans la description de ton dysfonctionnement que "cela ne fonctionne pas" ou "mon script plante".
    S'il y a un message d'erreur, il faut le donner.

    A ta place, juste avant cette ligne, je vérifierais ce que contient exactement cette chaine de caractère, par exemple avec un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Debug.Print "COPY " & vUrlDeux & "calendrier_recette_mens.cal " & ThisWorkbook.Path
    Si tu ne vois pas de problème dans la chaine qui apparait dans la fenêtre d'exécution, essaye de la copier dans l'invite de commande MS-DOS pour voir s'il ne donne pas une indication plus explicite sur le problème.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    juin 2019
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : juin 2019
    Messages : 135
    Points : 223
    Points
    223

    Par défaut

    bonjour,
    quand je lis serveur distant, je comprend loin, je conclue FTP!

    j'ai commencé par essayer de copier un fichier d'un dossier à un autre mais cela ne fonctionne pas


    comment le fais tu à la main?

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : mai 2013
    Messages : 42
    Points : 37
    Points
    37

    Par défaut

    Citation Envoyé par Menhir Voir le message
    Déjà, essaye d'être un peu plus descriptif dans la description de ton dysfonctionnement que "cela ne fonctionne pas" ou "mon script plante".
    S'il y a un message d'erreur, il faut le donner.

    A ta place, juste avant cette ligne, je vérifierais ce que contient exactement cette chaine de caractère, par exemple avec un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Debug.Print "COPY " & vUrlDeux & "calendrier_recette_mens.cal " & ThisWorkbook.Path
    Si tu ne vois pas de problème dans la chaine qui apparait dans la fenêtre d'exécution, essaye de la copier dans l'invite de commande MS-DOS pour voir s'il ne donne pas une indication plus explicite sur le problème.
    Après vérification il n'y a pas de souci avec la chaîne de caractère je tester en ligne de commande.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2013
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : mai 2013
    Messages : 42
    Points : 37
    Points
    37

    Par défaut

    Citation Envoyé par Thumb down Voir le message
    bonjour,
    quand je lis serveur distant, je comprend loin, je conclue FTP!



    comment le fais tu à la main?

    Bonjour,

    Effectivement il s'agit d'un FTP

    Je créer un fichier.txt
    Je me connecter au ftp
    je copie le fichier.txt sur dans un dossier sur le serveur

    Voila ce que je dois faire mais j'essai déjà de copier le fichier.tx d'un dossier à un autre.

  8. #8
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    juin 2019
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : juin 2019
    Messages : 135
    Points : 223
    Points
    223

    Par défaut

    déjà es tu capable de faire un ficher bat qui fonctionne?

    https://www.developpez.net/forums/d1...l/#post7886239

  9. #9
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    13 724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2007
    Messages : 13 724
    Points : 28 148
    Points
    28 148

    Par défaut

    Citation Envoyé par joss_villiers Voir le message
    Après vérification il n'y a pas de souci avec la chaîne de caractère je tester en ligne de commande.
    Ca veut dire que si tu copies cette chaine dans l'invite de commande par un simple copier/coller, l'exécution se passe sans problème et le fichier se copie correctement ?
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. Lancer un script shell depuis un script python
    Par freestyler dans le forum Général Python
    Réponses: 18
    Dernier message: 04/10/2011, 09h59
  2. Exécuter un script shell depuis php
    Par allyass dans le forum Linux
    Réponses: 5
    Dernier message: 12/12/2009, 01h14
  3. Réponses: 1
    Dernier message: 15/02/2009, 07h45
  4. écrire dans un script shell depuis perl
    Par painouch21 dans le forum Langage
    Réponses: 1
    Dernier message: 10/02/2008, 14h03
  5. Execution d'un script shell depuis un code C
    Par aproust dans le forum C
    Réponses: 6
    Dernier message: 12/05/2006, 13h53

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