如何将xls批量转换成xlsx

博客介绍了单个xls文件转换成xlsx文件的步骤,即点击“文件”“另存为”,选择“Excel 97 - 2003工作簿”保存。针对多个文件,可使用VBA代码批量操作,按单个文件转换步骤自动执行,还给出了VBA代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面是单个xls转换成xlsx的步骤,相信大家都知道

 

1. 点击“文件”,然后选择“另存为”,并保存到桌面

2.然后点击“保存类型”,选择“Excel 97-2003工作簿”,然后点“保存

 

但是我有100个文件,能不能批量操作?

答:当然可以,只要用VBA代码就能按上面的操作自动执行100次,帮你批量将.xls转化成.xlsx。

具体操作请看下方动图

 

VBA代码如下(复制即可):

 

'***********访问当前文件夹下所有子文件夹及文件,
Dim iFile(1 To 100000) As String
Dim count As Integer
Sub xls2xlsx()
    iPath = ThisWorkbook.Path
    On Error Resume Next
    count = 0
    zdir iPath
    For i = 1 To count
        If iFile(i) Like "*.xls" And iFile(i) <> ThisWorkbook.FullName Then
            MyFile = iFile(i)
            FilePath = Replace(MyFile, ".xls", ".xlsx")
            If Dir(FilePath, 16) = Empty Then
                Set WBookOther = Workbooks.Open(MyFile)
                Application.ScreenUpdating = False
                ActiveWorkbook.SaveAs Filename:=FilePath, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
                WBookOther.Close SaveChanges:=False      '解决不能close 文件问题
                Application.ScreenUpdating = True
            End If
        End If
    Next
End Sub
Sub zdir(p)       '访问当前文件夹下所有子文件夹及文件
  Set fs = CreateObject("scripting.filesystemobject")
  For Each f In fs.GetFolder(p).Files
    If f <> ThisWorkbook.FullName Then count = count + 1: iFile(count) = f
  Next
  For Each m In fs.GetFolder(p).SubFolders
      zdir m
  Next
End Sub
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值