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
| Option Explicit
Sub Rename()
Dim sDossSource As String, sDossDest As String, sFile As String, c As Range
sDossSource = DossierChoisi()
sDossDest = DossierChoisi()
If MsgBox("Transférer / renommer les fichiers" & vbLf & _
" du dossier " & sDossSource & vbLf & _
"dans le dossier " & sDossDest, _
vbYesNo + vbDefaultButton2, "Oui/Non?") = vbYes Then
sFile = Dir(sDossSource)
For Each c In Range("Tab")
If c.Next.Value <> "" Then
FileCopy sDossSource + sFile, sDossDest + UCase(c.Value) + " " + UCase(c.Next.Value) + ".jpg" '--- copie/renomme la photo
Kill sDossSource + sFile '--- supprime la photo
sFile = Dir
End If
Next
End If
End Sub
Public Function DossierChoisi() As String
DossierChoisi = ""
With Application.FileDialog(4) '--- 4 = msoFileDialogFolderPicker
.InitialFileName = "D:\"
.AllowMultiSelect = False
.InitialView = 2 '--- 2 = msoFileDialogViewDetails
.Title = "Cliquer sur le dossier puis cliquer sur OK"
If .Show <> 0 Then
DossierChoisi = .SelectedItems(1) & "\"
End If
End With
End Function |
Partager