Powerpoint 文件的 VBA SaveAs 方法存在问题

Posted

技术标签:

【中文标题】Powerpoint 文件的 VBA SaveAs 方法存在问题【英文标题】:Issue with VBA SaveAs method for Powerpoint files 【发布时间】:2013-11-21 17:23:01 【问题描述】:

我的 VBA 脚本有问题。 我正在对 PPT 表格进行一些修改。

在脚本结束时,我想保存修改,这就是问题所在。

为了进行保存,我使用以下命令将文件保存在特定文件夹中:

PptDoc.SaveAs (ActiveWorkbook.Path & Application.PathSeparator & "result" & Application.PathSeparator & sFilename

(PptDoc 是一个 PowerPoint.Presentation)

执行时一切正常。文件正确保存在正确的地址。然后当我想启动 ppt 时,文件已损坏,我无法打开它。 我不知道该怎么办,我在 Google 上没有找到任何东西。

这里有一些精度:

我正在使用 Excel/PowerPoint 2011 for Mac ; 我的脚本修改了现有 powerpoint 文件表的内容 (30); 当我手动保存我的工作时,它可以工作并且以后没有错误

【问题讨论】:

【参考方案1】:

我终于找到了解决办法,

正确的命令是:

PptDoc.SaveAs (ActiveWorkbook.Path & Application.PathSeparator & "result" & Application.PathSeparator & sFilename, ppSaveAsOpenXMLPresentation

默认情况下,它选择与 .ppt 等效的格式,但我的文件是 .pptx。 ppSaveAsOpenXMLPresentation 表示 .pptx,而 ppSaveAsDefault 或 ppSaveAsPresentation 表示 .ppt。

希望对遇到同样问题的人有所帮助

:)

【讨论】:

以上是关于Powerpoint 文件的 VBA SaveAs 方法存在问题的主要内容,如果未能解决你的问题,请参考以下文章

VBA:SaveAs 方法创建无限的 csv 文件

宏 VBA,无法让“SaveAs”发挥作用

从VBA中的PowerPoint文件中提取所有文本

Excel VBA Saveas 函数损坏文件

Word VBA SaveAs 错误:文件类型和文件扩展名不兼容

VBA ActiveWorkbook.Saveas 运行时错误 1004