Excel表格批量转换成PDF文档

时间:2024-10-13 17:05:34

1、打开Excel表格,点击【开发工具】、【Visual Basic】调出VBE编辑器。

Excel表格批量转换成PDF文档

2、在VBE编辑器的菜单栏上面点击【插入】、【模块】。

Excel表格批量转换成PDF文档

3、在模块的代码框里边输入以下VBA程序代码。Sub ExportToPDF()Dim Arr, Str1, Str2, Shp, myPath1, myPath2, MyPos, Na, Sh, i1, i2On Error Resume Next '忽略运行中可能出现的错误Application.ScreenUpdating = False '关闭工作表更新,提高运行速度Application.DisplayAlerts = False '忽略报警提示Arr = Array(".xls", ".xlsx", ".xlsm") 'Excel格式集合myPath1 = "D:\ABCD1\" '源文件路径myPath2 = myPath1 & "EFGH\" '导出路径MkDir myPath2 '新建文件夹Set fs = CreateObject("Scripting.FileSystemObject") '计算机文件访问Set fo = fs.GetFolder(myPath1) '获取文件夹For Each fi In fo.Files '扫描文件夹里面的每一个文件i1 = 0i2 = 0Na = fi.Name '获取文件名称Do i1 = MyPos '寄存上次获取“.”的位置 i2 = i2 + 1 MyPos = InStr(MyPos + 1, Na, ".") '获取"."存在的位置 If MyPos = 0 And i2 <> 1 Then Str1 = Right(Na, Len(Na) - i1 + 1) '截取后缀名 Str2 = Left(Na, i1 - 1) & ".pdf" '生成新的PDF文件名称 If UBound(Filter(Arr, Str1)) = 0 Then '如果是Excel格式的文件,则 Workbooks.Open Filename:=myPath1 & Na '打开Excel文件 For Each Sh In Workbooks(Na).Sheets '扫描每张工作表 Sh.PageSetup.Zoom = 80 '工作表打印区域设定成80% Next Workbooks(Na).ExportAsFixedFormat Type:=xlTypePDF, _ Filename:=myPath2 & Str2, Quality:=xlQualityStandard '输出PDF文件 Workbooks(Na).Close '关闭工作表 End If Exit Do '退出Do循环 End IfLoopNextApplication.DisplayAlerts = True '恢复报警提示Application.ScreenUpdating = True '恢复更新显示End Sub

Excel表格批量转换成PDF文档

4、确认无误后(主要是待转换的Ex罕铞泱殳cel文件路径),然后在VBE编辑器的功能区上面点击“运行”图标运行程序。

Excel表格批量转换成PDF文档

5、程序运行完成后,打开源文件里边新生成的文件夹。

Excel表格批量转换成PDF文档

6、将会看到批量导出的PDF文件。

Excel表格批量转换成PDF文档
© 手抄报圈