• ExcelVBA把当前工作表导出为PDF文档


    7df0ef5f8d062ad04163f779a45f20e5.png

    我们先问问Kimi

    eaf7df8cca2a06bff99ec6d883a7e8af.png

    Excel导出为PDF的方法有多种,以下是一些常见的方法:

    1. 1 使用Excel软件的内置功能:

    • 打开Excel文件,点击“文件”菜单。

    • 选择“另存为”,在“保存类型”中选择“PDF”。

    • 设置保存路径和文件名,点击“保存”。

    2 通过Excel的“输出为PDF”功能:

    • 在Excel中,点击“文件”菜单下的“输出为PDF”。

    • 选择“当前工作表”或“整个工作簿”。

    • 指定保存路径,点击“开始输出”。

    3 使用“创建PDF/XPS”选项:

    • 在Excel中,点击“文件”菜单中的“导出”。

    • 选择“创建PDF/XPS”,在弹出的对话框中设置保存路径和文件名。

    • 如果需要将整个工作簿保存为PDF,点击“选项...”,选择“整个工作簿”,然后点击“确定”并发布。

    7 在Office桌面应用中保存或转换为PDF或XPS:

    • 使用Microsoft Office程序,可以另存或转换文件为PDF格式。

    56 使用在线转换服务:

    • 将Excel文件拖放到在线转换工具的指定区域,或通过“选择文件”按钮上传。

    • 根据提示操作,转换完成后下载PDF文件。

    4 使用编程语言如Java进行转换:

    • 通过编程方式,可以使用特定的库(如iText)来动态生成PDF,并将数据插入到PDF模板中。

    每种方法都有其适用场景,可以根据个人需求和操作习惯选择最合适的一种。例如,如果需要频繁进行转换,可能更倾向于使用编程方式自动化处理;如果只是偶尔转换单个文件,使用Excel内置功能或在线服务可能更为便捷。

    综上,我们还是利用ExcelVBA的方法是最好的方法:

    也可以后期制作在VSTO插件中

    下面是完成的代码

    功能:

    1.代码自动检测是否存在打印区域,若有,导出打印区域,若无,导出整表

    2.导出的文件保存在原文件的根目录中,命名为:原文件_out.pdf

    1. Sub ExportActiveSheetToPDF()
    2. Dim ws As Worksheet
    3. ' 指定要导出的工作表,这里假设是要导出活动工作表
    4. Set ws = ActiveSheet
    5. ' 获取并设置PDF文件名
    6. Dim filePath As String
    7. filePath = ThisWorkbook.path & "\" & ws.Name & "_out.pdf"
    8. ' 使用工作表的PrintArea属性获取打印区域
    9. With ws
    10. .pageSetup.CenterFooter = "第 &P 页 / 共 &N 页"
    11. If .pageSetup.printArea <> "" Then
    12. ' 如果设置了打印区域,则导出该区域
    13. .ExportAsFixedFormat Type:=xlTypePDF, _
    14. Filename:=filePath, _
    15. OpenAfterPublish:=False, _
    16. IgnorePrintAreas:=False
    17. Else
    18. ' 如果未设置打印区域,则导出整个工作表
    19. .ExportAsFixedFormat Type:=xlTypePDF, _
    20. Filename:=filePath, _
    21. OpenAfterPublish:=False
    22. End If
    23. End With
    24. MsgBox "PDF已成功创建并保存到:" & filePath
    25. End Sub

    关注,有更多文章

     

  • 相关阅读:
    STL再回顾(非常见知识点)
    牛客面试刷题
    前端性能优化之数据采集Performance API实战篇
    【web前端期末大作业】基于html关爱空巢老人网页设计与实现
    C++算法前缀和的应用:分割数组的最大值的原理、源码及测试用例
    欧奈尔RPS曲线的编制方法及常见问题解答
    Nginx 反向代理,负载均衡,动静分离和高可用 实操
    【【萌新的RiscV学习之流水线控制-9】】
    搜题公众号搭建
    ELK企业级日志分析平台
  • 原文地址:https://blog.csdn.net/fsyuheduo/article/details/138054475