2017-04-18 218 views

回答

3

使用这个宏,您可以在文件夹中的所有.tmp文件重命名为.txt

看看在VBA Name方法:

的名称声明重命名文件,如有必要将其移动到不同的 目录或文件夹。名称可以跨驱动器移动文件, 但它只能在 新路径名和旧路径名位于同一驱动器上时重命名现有目录或文件夹。名称不能 创建一个新的文件,目录或文件夹。

代码:

Sub rename_files() 

    Dim MyFolder As String, MyFile As String, NewName As String, i As Integer 

    MyFolder = "C:\Users\User1\Desktop\test_folder\" 
    MyFile = Dir(MyFolder & "*.tmp") 

    Do While MyFile <> "" 
     i = InStrRev(MyFile, ".") 
     NewName = Left(MyFile, i - 1) & ".txt" 
     Name MyFolder & MyFile As MyFolder & NewName 
     MyFile = Dir 
    Loop 

End Sub 
+0

我在测试这让编译错误。这很奇怪。 – Masoud

+0

这里工作得很好......'Excel 2010,VBA 7.0.1637' –

+0

可能是一个缺失的参考库或其他东西。感谢您的贡献。 – Masoud