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 :

Wild Card CopyFile dans une macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 17
    Par défaut Wild Card CopyFile dans une macro
    Bonjour,

    J aimerais avoir de l aide pour une macro, j ai besoin de copier un fichier contenant une variable et une chaine de 4 caracteres inconnus.

    Voici le bout de 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
    15
    16
    17
    18
    19
    20
    21
     
    a = InputBox("Sequence (xxx)?")
    '
        If a = "" Then
            MsgBox ("You forgot to type the sequence number")
        Exit Sub
        Else
     
        gifdirc = "W:\pro\TPAN1\GIF\"
        clidirg = "Y:\C1-Client-Exchange\TPO\Processing\Seq" & a & "\GIFS\"
     
        If (myName = Dir(clidirg, vbDirectory)) = vbEmpty Then ' testing repertory
    MsgBox " directory " & Chr(34) _
    & clidirc & Chr(34) & " is existing !", _
    vbInformation
     
        namegifSTK = 01Q_& a &_STK_****
     
        FileCopy gifdirc & namegifSTK & ".gif", clidirg & namegifSTK & ".gif"
     
       .....
    J aimerais pouvoir copier ce fichier
    01P_variable"a"_STK_(4caracteresinconnu).gif dans un autre repertoire en gardant le meme nom de fichier.

    J espere avoir ete clair

    Merci de votre aide.

    Ben

  2. #2
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    bonjour,

    pour ma part, je ferais quelque chose de ce genre
    en n'oubliant pas d'ajouter la référence à Scripting runtime.

    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
    Sub KopyGIF()
    Dim A As String
    Dim NameGifSTK As String
    Dim GifDirC As String, CliDirG As String
    Dim FSO As New FileSystemObject, F As File
     
    'définition des répertoires
    A = InputBox("Sequence (xxx)?")
     
    GifDirC = "W:\pro\TPAN1\GIF\"
    CliDirG = "Y:\C1-Client-Exchange\TPO\Processing\Seq" & A & "\GIFS\"
    'définition du fichier à copier
    NameGifSTK = "01Q_" & A & "_STK_"
     
    'test si répertoire existe
    If FSO.FolderExists(CliDirG) Then
        MsgBox "Directory " & Chr(34) _
                & CliDirG & Chr(34) & " is existing !", _
                vbInformation
        'itération des fichiers présents dans le répertoire
        For Each F In FSO.GetFolder(GifDirC).Files
            'test des extensions
            If Right(F.Name, 3) = "gif" Then
                'test du nom de fichier
                If Left(F.Name, Len(NameGifSTK)) = NameGifSTK Then
                    'copie du fichier
                    FileCopy F.Path, CliDirG & F.Name
                End If
            End If
        Next F
    End If
     
    End Sub

  3. #3
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Bonjour à tous,

    un exemple en utilisant la commande DIR

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim MonRepertoire As String, MonFichier As String, Result As String
     
    MonRepertoire = "W:\pro\TPAN1\GIF\"
    MonFichier = "01Q_" & "a_STK_*" & ".GIF"
     
    If Dir(MonRepertoire, vbDirectory) <> "" Then
    ChDrive MonRepertoire: ChDir MonRepertoire
    Result = Dir(MonFichier)
        If Result > " " Then
            MsgBox "filecopy ici : " & Result
        End If
    End If

  4. #4
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 17
    Par défaut
    Ok marche tres bien avec la commande DIR

    Merci beaucoup pour votre aide.

    Ben

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/09/2008, 16h12
  2. Exécuter une sub d'un module dans une macro
    Par pnoel-bi dans le forum Access
    Réponses: 3
    Dernier message: 03/03/2006, 11h39
  3. Code asm dans une macro C
    Par progfou dans le forum C
    Réponses: 11
    Dernier message: 01/03/2006, 19h50
  4. Comment insérer une macro excel dans une macro word?
    Par max2245 dans le forum VBA Word
    Réponses: 15
    Dernier message: 07/01/2006, 18h44
  5. pb dans une macro excel VB
    Par syl221 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/10/2005, 18h29

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