Copie de fichier et respect de la casse

Résolu
jucva Messages postés 27 Statut Membre -  
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Voici mon pbs :

Je copie mes fichier d'un pc à un autre via une macro excel.

La copie ce passe bien suaf que le nom du fichier qui été en majuscule sur le pc "Source" est en miniscule sur le PC "Destination".

Comment est ce que je peux paramétrer le respect de la casse??????

Merci de votre aide.

Ju

3 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    Commencez déjà par nous donner votre code afin que l'on puisse voir ce qui cloche éventuellement.
    0
  2. jucva Messages postés 27 Statut Membre 2
     
    Voici le code :

    Set fso = CreateObject("Scripting.FileSystemObject")
    Longeur1 = Len(Range("A" & Y))
    Longeur2 = InStrRev(Range("A" & Y), "\")
    Longeur3 = Longeur1 - Longeur2
    Fich$ = Right(Range("A" & Y), Longeur3) ' Copie des fichiers
    Src$ = Left(Range("A" & Y), Longeur2)
    Sheets("Feuil1").Select
    Dest$ = Reptravail
    Sheets("DATA").Select
    On Error Resume Next
    fso.CopyFile Src$ & Fich$, Dest$ & Fich$
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      J'ai essayé par le FSO justement et il respecte la casse...
      Je vais regarder s'il n'y aurait pas un paramètre...

      Mais déjà, dans l'état, je suppose que dans
      Range("A" & Y)
      tu as le nom complet chemin d'accès du source + nom du fichier + extension?
      Dans
      Dest$
      même chose chemin d'accès de destination + nom du fichier + extension?

      Si oui à ces deux questions, tes longueurs ne servent à rien...
      teste ça :
      Set fso = CreateObject("Scripting.FileSystemObject")
      
      Src$ = Range("A" & Y)
      Sheets("Feuil1").Select
      Dest$ = Reptravail
      Sheets("DATA").Select
      On Error Resume Next
      fso.CopyFile Src$ , Dest$


      Je reviens demain...
      0
  3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    Pardon, hier soir j'ai dit une bêtise.
    En fait, tu as, dans tes Range("A" & Y) le chemin complet de tes fichiers à déplacer, et dans Dest$ tu n'as que le répertoire de destination.

    Donc, plutôt que de manipuler avec des Right, Left etc tes chaines, je te propose d'utiliser les propriétés des FSO, et notamment GetFileName qui te retourne le nom du fichier avec extension.

    Essaie donc ceci :

    Sub test()
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    Src$ = Range("A" & Y)
    Fic$ = fso.GetFileName(Src$)
    Sheets("Feuil1").Select
    Dest$ = Reptravail & Fic$
    Sheets("DATA").Select
    On Error Resume Next
    fso.CopyFile Src$, Dest$
    End Sub


    Il faudra que tu m'expliques également ce qu'est
    Reptravail
    .
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      A voir également : https://www.commentcamarche.net/faq/32943-vba-excel-deplacer-tous-types-de-fichiers

      Il y a un exemple en téléchargement...
      0