XL 2016 Fonction Name xxx As yyy

msauvegrain

XLDnaute Nouveau
Bonjour,

J'ai un problème, erreur chemin fichier.

VB:
Sub RenommeJpg()
   Dim Ligne As Long
   Dim chemin, FichOrigine, FichDestination, nom_origine, nom_modifie As String
   ' Définition des répertoires
   chemin = "C:\Program Files (x86)\FreeManagerSoftware\PhilaManager\Catalogue\Allemagne RDA\Poste\"
  
   ' Test existence des répertoires
   If Dir(chemin, vbDirectory) = "" Then
      MsgBox "Le répertoire d'origine n'existe pas !": Exit Sub
   End If
  
   ' Boucle sur toutes les lignes de la plage active à partir de la seconde
   For Ligne = 2 To ActiveSheet.UsedRange.Rows.Count
      If Cells(Ligne, 5) <> "" Then ' Test colonne A non vide
            FichOrigine = Cells(Ligne, 5) ' définition du fichier d'origine
            FichDestination = Cells(Ligne, 2) ' Définition fichier de destination
                nom_origine = chemin & FichOrigine
                nom_modifie = chemin & FichDestination
            
            If Dir(nom_origine) <> "" Then 'Test existence fichier d'origine
            ' Déplacement et renommage du fichier

               Name nom_origine As nom_modifie
              
               Cells(Ligne, 7) = "Trouvé" ' Réussi
            Else
               Cells(Ligne, 7) = "Pas Trouvé" ' Echec
            End If
      End If
   Next Ligne
End Sub

si qqn a une idée
 

Pièces jointes

  • corresp.xlsm
    215.2 KB · Affichages: 7

cp4

XLDnaute Barbatruc
Bonjour,

J'ai un problème, erreur chemin fichier.

VB:
Sub RenommeJpg()
   Dim Ligne As Long
   Dim chemin, FichOrigine, FichDestination, nom_origine, nom_modifie As String
   ' Définition des répertoires
   chemin = "C:\Program Files (x86)\FreeManagerSoftware\PhilaManager\Catalogue\Allemagne RDA\Poste\"
 
   ' Test existence des répertoires
   If Dir(chemin, vbDirectory) = "" Then
      MsgBox "Le répertoire d'origine n'existe pas !": Exit Sub
   End If
 
   ' Boucle sur toutes les lignes de la plage active à partir de la seconde
   For Ligne = 2 To ActiveSheet.UsedRange.Rows.Count
      If Cells(Ligne, 5) <> "" Then ' Test colonne A non vide
            FichOrigine = Cells(Ligne, 5) ' définition du fichier d'origine
            FichDestination = Cells(Ligne, 2) ' Définition fichier de destination
                nom_origine = chemin & FichOrigine
                nom_modifie = chemin & FichDestination
           
            If Dir(nom_origine) <> "" Then 'Test existence fichier d'origine
            ' Déplacement et renommage du fichier

               Name nom_origine As nom_modifie
             
               Cells(Ligne, 7) = "Trouvé" ' Réussi
            Else
               Cells(Ligne, 7) = "Pas Trouvé" ' Echec
            End If
      End If
   Next Ligne
End Sub

si qqn a une idée
Bonjour,

@msauvegrain : Je ne vois pas vraiment comment t'aider. Dans la démo, je te montre comment cibler un fichier et ensuite faire un copier/coller de son chemin. J'espère que ça résoudra ton problème.
CHEMIN.gif
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Je ne sais pas comment activer les droits administrateur en VB
As-tu essayé de lancer Excel en mode administrateur ?

Remarque : c'est quand même un peu risqué de jouer avec le mode admin.
Il doit bien y avoir une raison pour que tu n'aies pas accès à certains dossiers... ;)


[edit]
c'est une histoire de droits, dans le répertoire "Programme", ça ne fonctionne pas
OK, je n'avais pas vu que tu voulais trvailler dans C:\Program Files (x86)\FreeManagerSoftware\PhilaManager\Catalogue\Allemagne RDA\Poste\
Ca explique pourquoi tu n'as pas les droits par défaut. ;)
[/edit]
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonsoir
Pour rappeler as or Not As
Name Instruction
Le Lien :
VB:
Dim oldName, oldName
oldName = "OLDFILE": newName = "NEWFILE" ' Define file names.
Name oldName As oldName ' Rename file. 
oldName = "C:\MYDIR\OLDFILE": newName = "C:\YOURDIR\NEWFILE"
Name oldName As newName ' Move and rename file.
il y a aussi
Code:
Par exemple, pour copier le fichier Paye.xlsm qui se trouve dans le dossier c:\data\encours\ dans le fichier Paye-Janvier.xlsm du même dossier, vous utiliserez l’instruction suivante :

FileCopy "c:\data\encours\Paye.xlsm", "c:\data\encours\Paye-Janvier.xlsm"
Copy or Rename ? that's the question !
je vais me cacher Lol
jean marie
 

TooFatBoy

XLDnaute Barbatruc
Y a pas comme une légère coquille dans leur explication :

Dim oldName, oldName
oldName = "OLDFILE": newName = "NEWFILE" ' Define file names.
Name oldName As oldName ' Rename file.


Perso, je verrais plutôt un truc comme ça :
VB:
Dim oldName, newName
oldName = "OLDFILE": newName = "NEWFILE" ' Define file names.
Name oldName As newName ' Rename file. 
oldName = "C:\MYDIR\OLDFILE": newName = "C:\YOURDIR\NEWFILE"
Name oldName As newName ' Move and rename file.
 

Discussions similaires

Statistiques des forums

Discussions
311 737
Messages
2 082 036
Membres
101 878
dernier inscrit
1475214