分享

批量xls转xlsx

 精神360 2019-08-09

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 文件问题

Kill myfile '删除旧文件

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多