这周处理的买卖合同纠纷的案子,当事人给我了不少于20个excel的对账文件,每个excel中又有多个工作簿(sheet),提交给法院必须要转成pdf。
也就是说,要把每个表格中的sheet单独保存后,再转为pdf,太费劲了,没有半天到一天的功夫,感觉这活儿根本干不完。
好在互联网时代,总能遇到一些热心分享的网友。我把他们的技巧进行了整合,为自己处理案件节约了大量的时间,今天也分享给大家。
Excel表格拆分多个sheet
首先要做的是,把一个excel表格中的多个sheet拆分成多个子表格,具体操作步骤如下:
1.打开总表,按快捷键Alt+F11,调出VBA编辑器。再点击“插入“,选择“模块”,输入下述代码:
PrivateSub 分拆工作表()Application.ScreenUpdating = False'让屏幕不显示操作过程,Dim sht As WorksheetDim MyBook As WorkbookSet MyBook = ActiveWorkbookFor Each sht In MyBook.SheetsIf sht.Visible = True Then '隐藏的sheet跳过,否则会报1004无法复制错误sht.CopyActiveWorkbook.SaveAsFilename:=MyBook.Path & "\" & sht.Name & ".xlsx", FileFormat:=xlWorkbookDefault '将工作簿另存为EXCEL默认格式ActiveWorkbook.CloseEnd IfNextMsgBox "文件已经被分拆完毕!"Application.ScreenUpdating = True '让屏幕恢复显示操作过程,End Sub
2.点击“运行”后,总表中不同的sheet就拆分好了。
Excel批量转PDF
一、准备工作
- 1. 新建一个空白 Excel 文件,把它和你要转 PDF 的所有 Excel 文件,放在同一个文件夹里(这是关键!)NB:建议先复制几份测试用的文件,避免操作失误损坏原件。
- 2. 打开 VBA 编辑器,按快捷键 Alt + F11,调出 VBA 编辑器窗口。
二、导入代码
- 1. 在 VBA 编辑器里,右键点击左侧的当前工作簿名称 → 选择「插入」→「模块」。
- 2. 把下面这段完整代码,复制粘贴到右侧的空白代码窗口里:
Sub test() myPath = ThisWorkbook.Path & "\" myFile = Dir(ThisWorkbook.Path & "\" & "*.xls*") Do While myFile <> "" If myFile <> ThisWorkbook.Name Then Set am = Workbooks.Open(myPath & myFile) myFile2 = myPath & myFile & ".pdf" am.ExportAsFixedFormat _ Type:=xlTypePDF, _ Filename:=myFile2, _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=False Workbooks(myFile).Close False End If myFile = Dir Loop MsgBox "CONVERSION ACABADA"End Sub
- 3. 按 Ctrl + S 保存这个文件,保存类型一定要选 「Excel 启用宏的工作簿(*.xlsm)」,否则代码会失效。
三、运行代码(批量转换)
- 1. 回到刚才的 xlsm 文件,按 Alt + F8 打开「宏」窗口。
- 2. 在列表里选中 test 这个宏 → 点击「执行」。
- 3. 运行后,程序会自动打开文件夹里的每个 Excel 文件,生成同名的 PDF 文件,最后弹出提示框" CONVERSION ACABADA" 表示完成。
最后的成果展示
[参考文献]
- 1. Excel情报局:《Excel一个工作簿中多个工作表拆分成多个独立的工作簿!》,载Excel情报局,2021年8月5日
PS:Excel转pdf的代码此前copy某一篇文章中的代码,但文章出处找不到了,借用一下,侵权删!!!
以上就是本期的全部内容,我们下期再见!原创不易,如果这篇文章对大家有帮助,麻烦顺手点个“赞”或“在看”,就是对我最大的支持了。如果喜欢我的内容,又想获取更多干货,欢迎点击下方名片关注。另外,如果有法律问题咨询或法律事务委托,也可添加添加本人微信(备注真实姓名)
快要到手的律师费,我选择了拒绝
办案实务:劳动仲裁遇到假公章,谁才是真雇主?
青年律师的陷阱:把“专业化”误解为“只做某一类案子”