Vba renommer des fichiers need help thx

Résolu/Fermé
west-c Messages postés 17 Date d'inscription lundi 2 juillet 2007 Statut Membre Dernière intervention 19 mai 2010 - 3 janv. 2008 à 09:31
ldealist Messages postés 7 Date d'inscription dimanche 17 mai 2009 Statut Membre Dernière intervention 17 mai 2009 - 17 mai 2009 à 13:17
Bonjour tout le monde,
Bonne année, et tout mes meilleurs voeux pour 2008.

Je dois fair un programme en vba sous Excel qui permet de copié et de renommer des fichiers (photos).
Je possède dans la colonne L les noms des photos, et dans la colonne M les nouveaux noms que je dois leur attribuées.
Ce dossier se trouve sur le résaux.
J'ai commencé quelque chose mais sa ne marche pas. Quelqu'un peut-il m'aider?
Ai-je utilisé la melleur méthode?


Je suis allé cocher dans Outils, Références, « Microsoft Scripting Runtime »


Sub renommer_photo()

'déclaration des variables

Dim ancien_nom As String 'va enregistrer l'ancien nom de la photo
Dim nouveau_nom As String 'va enregistrer le nouveau nom de la photo
Dim i As Integer
Dim dernligne As Integer 'cette variable va rechercher la derniere ligne du tableau
Dim j As Integer
Dim oFSO As Scripting.FileSystemObject
Dim oDrv As Scripting.Drive
Dim oFld As Folder
Dim oFl As Scripting.File


Sheets("Feuil1").Select

'recherche de la derniere ligne

i = 1
Cells(i, 12).Select
Do
i = i + 1
Loop Until Cells(i, 12) = "" And Cells(i + 1, 12) = "" And Cells(i + 2, 12) = ""
dernligne = i - 1


'Instanciation du FSO
Set oFSO = New Scripting.FileSystemObject

'enregistrement des noms (ancien et nouveau) de la photo en renomme les fichiers
For j = 2 To dernligne
ancien_nom = Cells(j, 12).Value & ".eps" '.eps est l'extansion de la photo
nouveau_nom = Cells(j, 13).Value & ".eps"

'Instanciation de l'objet File
If oFSO.FileExists("U:\Images2\" & ancien_nom) Then
Set oFl = oFSO.GetFile("U:\Images2\" & ancien_nom)
End If

'copie du fichier
oFl.Copy "U:\image_renomée2\" & nouveau_nom, True

Next j

End Sub


Merci pour votre aide!
Et encor bonne année !
A voir également:

1 réponse

ldealist Messages postés 7 Date d'inscription dimanche 17 mai 2009 Statut Membre Dernière intervention 17 mai 2009 1
17 mai 2009 à 13:17
Je vois que le post date de l'an dernier mais je répond si jamais tu peux mettre le post en résolu pour les visteurs,
Pour renommer un fichier en vba utilise la macro suivante

Sub Change_Nom()
Name "c:\NomDelAncienFichier.jpg" as "c:\NomDuNouveauFichier.jpg"
End Sub

tout simplement.
1