我正在迈出 VBA 的第一步。
我已经尝试了很多事情,但仍然没有找到一种方法将 .pptm powerpoint 演示文稿保存为 .pptx 格式,并在特定路径中具有相同的文件名?
我已经使用以下代码保存为 pdf。
ActivePresentation.ExportAsFixedFormat "c:\" + Replace(ActivePresentation.Name, "pptm", "pdf"), ppFixedFormatTypePDF, ppFixedFormatIntentPrint, msoCTrue
先感谢您。
基本用法是:
With ActivePresentation
.SaveCopyAs _
FileName:=.Path & "\" & Left(.Name, InStrRev(.Name, ".")) & "pptx", _
FileFormat:=ppSaveAsOpenXMLPresentation
End With
(或者您可以使用 .SaveAs。SaveAsCopy 保持当前打开状态并且不打开副本,而 .SaveAs 将当前设置为保存的版本)
但是,如果您要保存的 Powerpoint 尚未保存至少一次,则上述内容将出错(Presentation.Name 中没有可使用 InStrRev 查找的文件扩展名)。您可以测试是否没有句号,也可以使用一种懒惰的方法,要求 FileSystemObject 获取不带扩展名的名称(我很懒,所以我更喜欢这种方法):
所以更好更稳健的方法是:
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
With ActivePresentation
.SaveCopyAs _
FileName:=fso.BuildPath(.Path, fso.GetBaseName(.Name) & ".pptx"), _
FileFormat:=ppSaveAsOpenXMLPresentation
End With
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)