下面是單個(gè)xls轉(zhuǎn)換成xlsx的步驟,相信大家都知道
1. 點(diǎn)擊“文件”,然后選擇“另存為”,并保存到桌面
2.然后點(diǎn)擊“保存類(lèi)型”,選擇“Excel 97-2003工作簿”,然后點(diǎn)“保存
但是我有100個(gè)文件,能不能批量操作?
答:當(dāng)然可以,只要用VBA代碼就能按上面的操作自動(dòng)執(zhí)行100次,幫你批量將.xls轉(zhuǎn)化成.xlsx。
具體操作請(qǐng)看下方動(dòng)圖
[圖片上傳失敗...(image-17d23e-1537033853588)
VBA代碼如下(復(fù)制即可):
'***********訪問(wèn)當(dāng)前文件夾下所有子文件夾及文件,
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 文件問(wèn)題
Application.ScreenUpdating = True
End If
End If
Next
End Sub
Sub zdir(p) '訪問(wèn)當(dāng)前文件夾下所有子文件夾及文件
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