2011-09-22 30 views
12

Esto es lo que tengo que hacer. Tengo estas dos columnas en una hoja de Excel. Con nombres de archivos. La primera columna tiene el nombre de archivo actual y la segunda columna tiene los nombres a los que quiero que se renombren los archivos. Necesito usar esto ya que no hay un patrón en el cambio de nombre. Por ejemplo, el siguiente puede ser un conjunto de archivos ...Renombrar archivos con Excel VBA

Current Name > Rename To 
--------------------------- 
Abc.jpg  > Dinner.jpg 

Xyz.jpg  > Driving.jpg 

123.jpg  > Sunset.jpg 

sé que debería ser fácil de hacer esto en VBA, pero no exactamente seguro de cómo. Cualquier ayuda sería muy apreciada.

Respuesta

27

Creo que podría hacer algo como esto, utilizando la función Name para cambiar el nombre de los archivos, sin embargo, probablemente deba asegurarse de que las 2 columnas tengan la ruta de archivo completa, es decir, "C: \ Temp \ ABC.jpg "

Dim Source As Range 
Dim OldFile As String 
Dim NewFile As String 

Set Source = Cells(1, 1).CurrentRegion 

For Row = 1 To Source.Rows.Count 
    OldFile = ActiveSheet.Cells(Row, 1) 
    NewFile = ActiveSheet.Cells(Row, 2) 

    ' rename files 
    Name OldFile As Newfile 

Next 
+2

+1. Puede valer la pena agregar un cheque para nombres de archivos en blanco y duplicados – brettdj