首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将多张图纸保存为.pdf

问将多张图纸保存为.pdf
EN

Stack Overflow用户
提问于 2013-01-19 01:48:48
回答 2查看 150.9K关注 0票数 33

我有一个报告电子表格,它从数据库中获取一些数据,并形成三张摘要报告信息。我希望从命令行自动运行电子表格,并让它自动将所有三个报表另存为PDF文件。

起初我以为我可以在工作表上有一个VBA宏,通过一系列“打印为PDF”来完成这项工作,但这需要一个中间交互对话框来指定输出文件名。然后我发现我可以只保存为pdf,并且宏可以设置输出文件名。然而,这会创建三个单独的文件,然后我必须将它们放在外部将它们合并在一起。

(奇怪的是,另存为pdf只保存一张工作表,而其他保存模式似乎可以保存整个工作簿。)

是的,有一些工具可以在以后合并这三个文件,但我想知道是否有一些简单的方法可以让Excel将多个工作表保存为一个pdf文件。

我现在打印一系列的东西,比如:

代码语言:javascript
复制
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, ...

我是否可以使用一条类似(伪代码)的语句:

代码语言:javascript
复制
ThisWorkbook.Sheets(1,2,3,4).ExportAsFixedFormat Type:=xlTypePDF, ...
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-19 05:32:15

首先选择要合并的图纸:

代码语言:javascript
复制
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2")).Select

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\tempo.pdf", Quality:= xlQualityStandard, IncludeDocProperties:=True, _
     IgnorePrintAreas:=False, OpenAfterPublish:=True
票数 85
EN

Stack Overflow用户

发布于 2014-09-13 03:49:35

我建议在导出到PDF后添加以下行:

代码语言:javascript
复制
ThisWorkbook.Sheets("Sheet1").Select

(其中例如Sheet1是您希望在之后激活的单张工作表)

将多个工作表留在选定状态可能会导致执行某些代码时出现问题。(例如,当多个工作表处于活动状态时,取消保护功能无法正常工作。)

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14404650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档