doc文件批量转换成htm以及htm批量转成xlsx

您所在的位置:网站首页 怎么将doc转换成excel doc文件批量转换成htm以及htm批量转成xlsx

doc文件批量转换成htm以及htm批量转成xlsx

2023-09-06 17:46| 来源: 网络整理| 查看: 265

现需把一批doc文件格式转换成xlsx,中间需要转换一次htm文件。

当然我首先想到的是直接修改后缀名,写一个bat文件,方便快捷是吧?

上天可不让你这么好过,直接修改后缀名后会损坏文件,所以要怎么办?

可以打开文件,然后开始——另存为——需要的格式,这个修改一两个文件倒没问题,可是有上千个文件

肯定不能一个个转吧,这时候就需要批量转换,有个非常好用的功能叫——宏命令。

下面这个是doc转htm,注意使用代码时更改相应的文件目录。

使用方法也很简单,在word录制一个宏,然后打开这个宏代码,复制粘贴进去即可。

Sub hongyi() ' ' hongyi 宏 ' ' Dim MyFile As String Dim Arr(1000) As String '一次处理最大的文件数量,根据需要修改数字1000改为需要处理的数量 Dim count As Integer MyFile = Dir("**当前文件目录**" & "*.doc") count = count + 1 Arr(count) = MyFile Do While MyFile "" MyFile = Dir If MyFile = "" Then Exit Do End If count = count + 1 Arr(count) = MyFile '将文件的名字存在数组中 Loop For i = 1 To count Documents.Open FileName:="**当前文件目录**" & Arr(i), ConfirmConversions:=False, ReadOnly:= _ False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:= _ "", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _ Format:=wdOpenFormatAuto, XMLTransform:="" ActiveDocument.SaveAs FileName:="**要保存到的目标文件目录**" & Replace(Arr(i), ".doc", ".htm"), FileFormat:= _ wdFormatFilteredHTML, LockComments:=False, Password:="", AddToRecentFiles _ :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _ :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _ SaveAsAOCELetter:=False ActiveWindow.View.Type = wdWebView ActiveDocument.Close Next End Sub

再之是htm转excel的代码

Sub 宏1() ' ' 宏1 宏 ' ' Dim oPath As String '原始文件路径 Dim oFName As String '原始文件名 Dim dPath As String '目标文件路径 Dim dFName As String '目标文件名 '获取路径 oPath = "****自行修改目录*****" dPath = "****自行修改目录*****" '打开工作簿时强制禁止宏 Application.AutomationSecurity = msoAutomationSecurityForceDisable '禁用警告 Application.DisplayAlerts = False '查找xls文件 oFName = Dir(oPath & "*.htm") '当文件被找到则不断循环 Do While oFName "" '打开工作簿 With Workbooks.Open(oPath & oFName) '判断工作簿是否含有VB工程 If .HasVBProject Then '若含有VB工程,则另存为启用宏的工作簿 dFName = Replace(oFName, ".htm", ".xlsx") .SaveAs dPath & dFName, xlOpenXMLWorkbookMacroEnabled Else '若不含有VB工程,则另存为一般工作簿 dFName = Replace(oFName, ".htm", ".xlsx") .SaveAs dPath & dFName, xlOpenXMLWorkbook End If '关闭工作簿 .Close False End With '查找下一个文件 oFName = Dir Loop '恢复打开文件的宏安全性设置 Application.AutomationSecurity = msoAutomationSecurityByUI '启用警告 Application.DisplayAlerts = True End Sub

希望此博客对大家有帮助!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3