excel vba获取word文件名(EXCELVBA批量对文件重命名)(1)

处理文件时经常会遇到需要对大量文件重命名,十几二十个手动修改下还好说,遇到成百上千,就需要借助软件了。网上有好多对文件重名的软件,功能也是比较多,但是没有一个用的比较顺手的,而且还会需要令人头疼的捆绑安装。VBA是Visual Basic的一种宏语言,主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。一般office EXCEL组件都会自带宏文件编辑器(打开EXCEL->开发工具 ->VB编辑器)。如果用的是WPS,请百度安装VBA for WPS。下面分析一个自己工作共常用的文件重名代码。

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub 文件重命名()

'

' 文件重命名

Set fso = CreateObject("scripting.filesystemobject")

Set ff = fso.getfolder("D:\test") ' 需要重名的文件所在的文件夹

i = 1

Dim strName As String

For Each f In ff.Files

strName = f.Name

strName = Replace(strName, "_今日头条_头条发布_", "") ' 删除文件名中的“_今日头条_头条发布_”

exc = fso.getextensionname(f) '获取文件扩展名

strName = Replace(strName, "." exc, Str(Date)) Str(i) "." exc ' 添加时间 添加编号

'strName = Left(strName,5)

'strName = Right(strName,5) '也可以用Min函数对文件名进行截取 截取时注意加扩展名

If f.Name <> strName Then

f.Name = strName End If

i = i 1

Next

End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

打开EXCEL 进入开发工具,新建宏。修改下要重命名的文件夹,以及文件重命名的规则就可以使用了。

,