2016-02-19 316 views
1

使用宏将工作表的副本保存为PDF到我的桌面。但是,使用我的宏时的实际文件大小会导致文件大小增加两到三倍,如果我要手动在Excel中转​​到Acrobat选项卡并创建PDF。我需要进一步缩小pdf的文件大小。我已经设置了一个小的打印区域,尝试使用最低质量,事先缩小图像大小等。是否有更好的替代方法来打印较小文件大小的工作表的PDF?文件之间的差异是100kb而不是280kb。Excel - VBA - ExportAsFixedFormat PDF文件大小太大

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Quality:=xlQualityMinimum, IgnorePrintAreas:=False, Filename:="C:\ 

回答

0

当我需要从Excel文件编程创建.pdf时,我以前遇到过与文件大小完全相同的问题。

一个解决方法虽然不是特别优雅,但可能会通过编程模拟使用SENDKEYS手动将文件保存为.pdf所需的键盘/鼠标操作。

最终结果应该是可接受的图像质量和较小的文件大小,通过手动执行该过程可以获得。

键的确切顺序可能会根据您的特定机器上有所不同,Excel版本,等等...但你可以尝试做这样的事情:

Application.SendKeys "%fy1{Enter}" 

你可能有玩弄的序列您正试图模拟的按键。但是这应该做你想做的事情。

+0

感谢您提供的信息,这实际上是一个非常好的主意,可能比我解决问题的效果更好。我最终在另一个使用AdobePDFMaker软件的论坛上找到了一些VBA代码,并调用它来创建PDF。唯一的问题是它需要用户的机器来激活VBA中的模块并且运行最新版本的Adobe。但是,它对我所需要的功能非常有用。我认为你的答案也可以作为一个很好的选择!感谢您花时间回答。 –