下面的代码将文件从date.xlsx重命名为date-重命名.xlsx。 Name 'D:\完美Excel\date.xlsx' As _ 'D:\完美Excel\我的文章\date-重命名.xlsx'如下图1所示,单元格C2中是当前文件名称,单元格C4中是新文件名称。Sub
RenameFileUseCellValue() Name ActiveSheet.Range('C2') As _注意到Name命令需要文件路径和文件名吗?因此,该命令不仅可以重命名文件,还可以移动文件。例如,下面的代码将文件从D:\完美Excel\移动到D:\完美Excel\我的文章\,但文件名保持不变。 Name 'D:\完美Excel\stores.xlsx' As _ 'D:\完美Excel\我的文章\stores.xlsx'移动文件可能会引发错误。为了避免执行Visual Basic错误调试过程,可以显示一个带有“确定”按钮的消息框。 Dim newFilePath As String filePath = 'D:\完美Excel\stores.xlsx' newFilePath = 'D:\完美Excel\stores-重命名.xlsx' Name filePath As newFilePath MsgBox Prompt:='不能重命名文件', _可以创建一个可重用函数。下面的VBA自定义函数接受两个参数:现有文件路径和新文件路径。Function
RenameFile(filePath As String, newFilePath As String) Name filePath As newFilePath Dim newFilePath As String filePath = 'D:\完美Excel\stores.xlsx' newFilePath = 'D:\完美Excel\stores-重命名.xlsx' MsgBox RenameFile(filePath, newFilePath)返回包含“True”的消息框,表示文件被重命名;返回包含“False”的消息框,表示发生错误。TRUE表示以单元格C2中值命名的文件已成功重命名为单元格C4中值的文件。如果我们再次运行该函数,它将显示FALSE,因为文件已经重命名。如果试图重命名不存在的文件或文件夹路径,则会触发错误:运行时错误'53’:未找到文件。如果新文件名与现有文件名相同,则会触发以下错误:运行时错误’58’:文件已存在。
|