使用宏将xlsx格式文件批量转为xls格式文件
程序员文章站
2022-07-13 12:07:21
...
前言:
在工作当中,我们经常使用excel表格。目前存在2003版的xls格式和2007版的xlsx格式。随着时间的推移大多数人都是使用的07版的xlsx格式文件。但是如果有一些程序只支持03版的xls格式怎么办呢?
如果是一个两个文件倒也好说,人工处理就可以了。那要是几百几千呢?这是用就要批量处理了。网上有一些方法能实现,但是有相当一部分只是换汤不换药,只是把后缀名改了,而文件格式实际上还是原来的格式。
下面我就贴出 安装WPS VPA插件,使用宏来进行文件的批量转换 的实现方法:
实现步骤一、
安装WPS VPA(首先电脑上要有wps,office的另行查找方法),
下载地址WPS VBA 7.0.1590.rar
解压后,就是傻瓜式安装。
实现步骤二、
安装完了之后,重新打开wps,新建一个excel文件。
点击“开发工具”,如下图:
然后,点击“VB 编辑器”。再打开的窗口界面,点击“插入”,选择“模块”。
实现步骤三、
Sub Macro1()
'
' Macro1 Macro
'
Dim myFiles
Dim i As Long
myFiles = Dir("G:\项目相关资料管理\南京江北新区\北大程序测试案例\*.xlsx")
On Error Resume Next
Application.ScreenUpdating = True
Application.DisplayAlerts = False
Do While myFiles <> ""
Workbooks.Open Filename:="G:\项目相关资料管理\南京江北新区\北大程序测试案例\" & myFiles
ActiveWorkbook.SaveAs Filename:= _
"G:\项目相关资料管理\南京江北新区\评级基础资料\" & Left(myFiles, Len(myFiles) - 1), FileFormat:=xlExcel8, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
ActiveWindow.Close
myFiles = Dir
i = i + 1
DoEvents
Loop
MsgBox "全部转换完毕,共转换文件 " & i & "个"
End Sub
最后,将上面的代码复制粘贴到窗口,快捷键ctrl+s保存,点击当前模块,再点击“运行”。运行宏就可以了
这里需要注意三个参数
myFiles 里面的文件地址为你需要转换的文件匹配规则
Workbooks.Open Filename: 里面为文件夹地址
ActiveWorkbook.SaveAs Filename: 里面为转换后文件保存地址。
上一篇: HDU6447 数状数组+离散化