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

VBScript Discussion :

vbs script problème de copier le fichier dans le répertoire créé


Sujet :

VBScript

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Collégien
    Inscrit en
    Août 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Collégien
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2015
    Messages : 1
    Points : 1
    Points
    1
    Par défaut vbs script problème de copier le fichier dans le répertoire créé
    bonjour,
    j'ai un problème avec mon script : ******* Sel_ZG_Resultat.txt the file is not copied to the folder "c: \ Photo_" & Year (Now ())



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim shell
    Set shell = CreateObject("WScript.Shell")
     
     
    dim Rapport, folder, filesys
     Rapport = "C:\Photo_" & Year(Now()) 
     
     set filesys= createObject("Scripting.FileSystemObject")
      if not filesys.FolderExists(PhotoRapport) then
    	Set folder = filesys.CreateFolder(PhotoRapport)
     end if
     
     
     shell.run "sqlcmd -U MonJa -d Ja_Test -m-1 -P azerty -S Ja-devSQL -p1  -i C:\ja\rap\Sel_ZGF.sql  -o folder\Sel_ZG_Resultat.txt",2, true

  2. #2
    Membre confirmé Avatar de pitchalov
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 340
    Points : 582
    Points
    582
    Par défaut
    Bonjour,

    Plusieurs points ne vont pas dans ton script :
    - tu initialise une variable Rapport que tu n'utilises pas par la suite, et après tu fait appel à une variable PhotoRapport qui n'existe pas
    - l'objet folder n'est initialisé que si le dossier n'existe pas --> si le dossier existe (mais ce ne sera pas le cas avec l'utilisation de Now, à moins que tu le lances plusieurs fois par seconde), ça ne marchera pas. Au cas où plus tard tu utiliserais autre chose que Now (Date par exemple), on va garder l'idée de base que si le dossier existe on bosse avec.
    - la variable folder contient un objet. Donc si veux mettre son chemin dans ta commande, il faut faire appel à la propriété Path de l'objet (sinon tu auras une erreur d'incompatibilité de types quant tu voudrasl'insérer dans une string)
    - dernière chose : en vbscript, si tu veux insérer une variable dans une string (ici ta ligne de commande), tu dois faire de la concaténation de strings avec le symbole "&" par exemple.

    Non testé, mais ça devrait t'avancer (en reprenant ton code) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim shell
    Set shell = CreateObject("WScript.Shell")
     
    dim Rapport, folder, filesys
    Rapport = "C:\Photo_" & Year(Now()) 
     
    set filesys= createObject("Scripting.FileSystemObject")
    if not filesys.FolderExists(Rapport) then
      Set folder = filesys.CreateFolder(Rapport)
    else
      Set folder = filesys.GetFolder(Rapport)
    end if
     
    shell.run "sqlcmd -U MonJa -d Ja_Test -m-1 -P azerty -S Ja-devSQL -p1  -i C:\ja\rap\Sel_ZGF.sql  -o " & folder.path & "\Sel_ZG_Resultat.txt",2, true
    En un peu mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim shell, Rapport, filesys
    Set shell = CreateObject("WScript.Shell")
    set filesys= createObject("Scripting.FileSystemObject")
     
    Rapport = "C:\Photo_" & Year(Now()) 
    if not filesys.FolderExists(Rapport) then filesys.CreateFolder Rapport
     
    shell.run "sqlcmd -U MonJa -d Ja_Test -m-1 -P azerty -S Ja-devSQL -p1  -i C:\ja\rap\Sel_ZGF.sql  -o " & Rapport & "\Sel_ZG_Resultat.txt",2, true
    Bonne continuation

Discussions similaires

  1. [Batch] Copier X Fichiers dans différents répertoires
    Par bixouille dans le forum Scripts/Batch
    Réponses: 13
    Dernier message: 12/05/2015, 18h56
  2. [AC-2000] Copier des fichiers dans un répertoire en une commande
    Par besdu06 dans le forum VBA Access
    Réponses: 4
    Dernier message: 22/10/2013, 09h19
  3. Réponses: 9
    Dernier message: 20/02/2009, 17h51
  4. Copier un fichier dans un répertoire?
    Par jbjweb dans le forum C
    Réponses: 5
    Dernier message: 05/09/2006, 15h34
  5. Copier un fichier dans un répertoire
    Par soft damsel dans le forum Langage
    Réponses: 2
    Dernier message: 14/02/2006, 16h02

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