Macro pour renommage en masse
Résolu
Memo133
Messages postés
7
Statut
Membre
-
Memo133 Messages postés 7 Statut Membre -
Memo133 Messages postés 7 Statut Membre -
Bonjour à tous,
J'essaie depuis trois jours de créer une macro excel de renommage de fichier afin de renommer des pdf en masse. Mais voilà, je ne parviens pas à la faire fonctionner. J'ai écrit cette macro ci-après :
Sub Renommer()
On Error Resume Next
Dim i As Integer
i = 1
While Cells(i, 1) <> 0
i = i + 1
Cells(i, 1).Select
Name "C:\Users\Documents\Financier\2018\Procedure_Rib\" & Range("A" & i) As "C:\Users\Documents\Financier\2018\Procedure_Rib\" & "\" & Range("B" & i)
Wend
Range("A2").Select
End Sub
et les docs sont dans le dossier "Procedure_Rib". Est-ce que quelqu'un pourrait m'expliquer ce que j'oublie ou ce que je fais mal?
Par avance un grand merci!
J'essaie depuis trois jours de créer une macro excel de renommage de fichier afin de renommer des pdf en masse. Mais voilà, je ne parviens pas à la faire fonctionner. J'ai écrit cette macro ci-après :
Sub Renommer()
On Error Resume Next
Dim i As Integer
i = 1
While Cells(i, 1) <> 0
i = i + 1
Cells(i, 1).Select
Name "C:\Users\Documents\Financier\2018\Procedure_Rib\" & Range("A" & i) As "C:\Users\Documents\Financier\2018\Procedure_Rib\" & "\" & Range("B" & i)
Wend
Range("A2").Select
End Sub
et les docs sont dans le dossier "Procedure_Rib". Est-ce que quelqu'un pourrait m'expliquer ce que j'oublie ou ce que je fais mal?
Par avance un grand merci!
1 réponse
-
Bonjour,
Essaies :Option Explicit Sub Renommer() Dim c As String Dim f As String Dim i As Integer c = "C:\Users\Documents\Financier\2018\Procedure_Rib\" i = 1 With ActiveSheet Do While .Cells(i, "A").Value <> "" f = c & .Cells(i, "A").Value If Dir(f) <> "" Then Name f As c & .Cells(i, "B").Value End If i = i + 1 Loop End With End Sub-
-
-
Bonjour,
Une petite amélioration :Option Explicit Sub Renommer() Dim c As String Dim f As String Dim i As Integer Dim m As String c = "C:\Users\Documents\Financier\2018\Procedure_Rib\" i = 1 With ActiveSheet Do While .Cells(i, "A").Value <> "" f = c & .Cells(i, "A").Value If Dir(f) <> "" Then Name f As c & .Cells(i, "B").Value Else m = m & vbCrLf & f End If i = i + 1 Loop End With If m > "" Then m = "Fichiers non trouvés :" & m MsgBox m, vbCritical End If End Sub -
-
-