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 :

Transfert de fichiers boucle VBS


Sujet :

VBScript

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mai 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Transfert de fichiers boucle VBS
    Bonjour, je suis totalement novice en vbs.

    Ma problématique:
    J'ai 700 fichiers dans un dossier 1, et j'aurai besoin de les ranger dans 700 dossiers contenus dans un autre dossier 2. Chaque fichier portant le même nom que son dossier cible respectif + une extension : "nomdudossier_xx_xXX.raw" à ranger dans "nomdudossier\

    individuellement je peut le faire avec ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set fso = WScript.CreateObject("Scripting.FileSystemObject")
    fso.CopyFile "Z:\dossierparent1\nomdudossier_XX_XXX.raw", "Z:\dossierparent2\nomdudossier"
    Je souhaiterai créer une boucle me permettant de gérer les 700 fichiers et les transférer dans leur dossier respectif.

    Merci d'avance pour votre aide.

    AA

  2. #2
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 805
    Points
    5 805
    Par défaut
    Bonjour et BIENVENU sur DVP

    S'il s'agit d'une simple copie, la méthode Copy ou CopyFile peut faire l'affaire
    S'il s'agit de déplacer les fichiers, on utilisera la méthode Move ou MoveFile
    Dans un cas comme dans l'autre, le dossier destination du fichier en cours devrait être créé au préalable.
    Selon le choix, dé-commente la ligne 12 ou 13 mais pas les 2 en même temps :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Option Explicit 
     
    Dim fso, Dossier1, Dossier2, oFold, Fichier, tmpPath 
     
    Dossier1 = "C:\TestDir\Temp"     ' A remplace par le dossier source
    Dossier2 = "C:\TestDir\Tmp"      ' A remplace par le dossier destination
    Set fso = CreateObject("Scripting.FileSystemObject") 
     
    Set oFold = fso.GetFolder(Dossier1)
    For Each Fichier In oFold.Files
        tmpPath = CreateDir(Fichier.Path)
        'Fichier.Copy tmpPath , True
        'Fichier.Move tmpPath
    Next
    '======================
    Function CreateDir(sFileName)
      Dim Ret
          Dossier2 = AddDirSep(Dossier2)  ' On s'assure que le chemin se termine par \
          Ret = fso.GetBaseName(sFileName) 
          If Not fso.FolderExists(Dossier2 & Ret) Then 
             CreateDir = AddDirSep(fso.CreateFolder(Dossier2 & Ret))
          Else
            CreateDir = AddDirSep(Dossier2 & Ret)
          End If
    End Function
    '========================
    Function AddDirSep(sDir)
      If Right(sDir, 1) <> "\" Then 
         AddDirSep = sDir & "\"
      Else 
         AddDirSep = sDir
      End If
    End Function
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

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

Discussions similaires

  1. Déclencher en boucle VBS selon Fichier Excel
    Par Jannos dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 10/09/2018, 18h28
  2. VBS- Looger le transfert de fichiers de ce script
    Par dimdelille dans le forum VBScript
    Réponses: 5
    Dernier message: 27/07/2012, 17h45
  3. Réponses: 17
    Dernier message: 15/05/2007, 18h35
  4. Transfert de fichier par ftp
    Par schub1015 dans le forum MFC
    Réponses: 3
    Dernier message: 14/01/2004, 17h53
  5. [Socket]Transfert de fichier
    Par Aminos dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 19/04/2003, 13h58

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