VBA Tips - Renomeando TODOS arquivos numa pasta - Renaming all files in a folder


Ao descarregar umas 700 fotos de uma câmera, também precisei renomeá-las. Pode imaginar como seria rápido fazer isso? 

Percebi que alterá-las manualmente, não era algo que estava interessado em fazer, então eu debrucei-me sob o VBA para resolver-me este "problema".

Este código percorrerá uma pasta e renomeará todos os arquivos nela.


Function ReFileName (Prefix As String, _
                    FILEPATH As String, _
                    nExtension As String, _
                    FinalExtension As String)
    
    Dim strfile As String
    Dim filenum As String
    Dim SizeExtension As Integer
    
    Let strfile = Dir(FILEPATH)
    Let SizeExtension = Len(Replace(nExtension, ".", ""))

    Do While strfile <> ""
        Debug.Print strfile
    
        If Right$(strfile, SizeExtension) = nExtension Then
            Let filenum = Mid$(strfile, Len(strfile) - 6, SizeExtension)
    
            Name FILEPATH & strfile As FILEPATH & Prefix & filenum & "." & FinalExtension
        End If
        Let strfile = Dir
    Loop
End Function


Tags: VBA, file, rename, folder, pasta, tips