使用 Excel VBA 重命名文件

Posted

技术标签:

【中文标题】使用 Excel VBA 重命名文件【英文标题】:Renaming Files with Excel VBA 【发布时间】:2022-01-23 21:18:54 【问题描述】:

这是我需要做的。我在 Excel 表中有这两列。带文件名。第一列具有当前文件名,第二列具有我希望将文件重命名为的名称。我需要使用它,因为重命名没有模式。比如下面可能是一组文件...

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

Xyz.jpg       >  Driving.jpg

123.jpg       >  Sunset.jpg

我知道在 VBA 中执行此操作应该很容易,但不确定如何操作。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

我认为您可以这样做,使用Name 函数重命名文件,但是,您可能需要确保两列具有完整的文件路径,即“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

【讨论】:

+1。可能值得为空白和重复文件名添加检查

以上是关于使用 Excel VBA 重命名文件的主要内容,如果未能解决你的问题,请参考以下文章

Excel VBA - 组合宏以重命名工作表和宏以在一个宏中合并工作表

excel vba复制数据范围,打开新的xlsx文件重命名表并保存

excel批量修改文件名

在 vba 中复制和重命名 Excel ActiveSheet

用vba新建工作表,并命名

MS Access VBA循环查询和重命名文件