VBA代码重命名1000个文件夹

时间:2015-06-18 13:28:17

标签: excel vba excel-vba

我对VBA很新,我正在尝试开发重命名文件夹的代码。我在Excel中设置了一个工作表,如下所示:

Column A:  Path of Folder
Column B:  Old Name
Column C:  New Name

这是我发现的可在单个文件夹上运行的代码。我不确定是否可以扩展此代码(例如循环)或者是否需要开发一个全新的代码。任何帮助将不胜感激。

Sub rename_folder()
    Dim old_name, new_name As String
    For i = 2 To Sheets(1).Range("a1").End(xlDown).Row
        new_name = Left(Sheets(1).Cells(i, 1).Value, Len(Sheets(1).Cells(i, 1).Value) - Len(Sheets(1).Cells(i, 2).Value))
        new_name = new_name & Sheets(1).Cells(i, 3).Value
        old_name = Sheets(1).Cells(i, 1).Value
        Name old_name As new_name
    Next i
End Sub 

1 个答案:

答案 0 :(得分:0)

我对你的问题感到有点困惑。你说你显示的代码已经用于一个文件夹...我不知道该代码如何对文件夹进行任何更改......它只能操作Excel中的数据。

然而,我稍微清理了一下代码:

Sub rename_folder()
    Dim old_name, new_name As String
    With Sheets(1)
        For i = 2 To .Range("a1").End(xlDown).Row
            new_name = Left(.Cells(i, 1).Value, Len(.Cells(i, 1).Value) - Len(.Cells(i, 2).Value))
            new_name = new_name & .Cells(i, 3).Value
            old_name = .Cells(i, 1).Value
            Name old_name As new_name
        Next i
    End With
End Sub