首页 > 解决方案 > Powerpoint VBA 演示文稿文件名

问题描述

考虑 PowerPoint 的 VBA - 这是一个有效的演示文稿函数调用吗?

Presentations(".\directory\ppname.ppt")

请注意,这将从 PowerPoint 演示文稿 VBA 中调用,以在子目录中打开另一个。

Microsoft Presentations 示例(和大多数其他示例)并未具体说明接受的文件名形式,例如使用 DOS 脚本中识别的“.”、“..”、“\”指令的那些。

标签: vbapowerpoint

解决方案


这似乎适用于 Powerpoint 2007。

如评论中所述,它需要一个文本块(TextRange)、文件引用的起始位置和长度,以及一个 LinkAddr。LinkAddr 本质上是一个 DOS 样式的文件引用,如“..\folder\ppfile.ppt”。

此处的目的是通过调用其 show.ppt 或 show.ppsm 文件名来启动另一个 PowerPoint 工具。文件名可以使用 MSDOS 文件名来引用其他目录。我不知道它是否可以跨越不同的机器平台,但它似乎可以在一个 Windows 10 系统中工作。我让这个工作的困难在于一些图像的完整路径链接,例如 Visual Basic 代码中的 C:\blah\blah\image.jpg 之类的东西。PowerPoint 不喜欢这些,而是​​询问有关启用宏的问题,并在我的一个文件链接要执行时挂断了电话。通过摆脱“宏观”抱怨,这突然开始起作用。

或者,最近对我的 2007 PowerPoint 工具的修复中可能已经修复了一些错误?

去搞清楚...

Sub InsertLink(ByRef Trange As TextRange, fpos As Long, msglen As Long, LinkAddr As String) ' Insert an HTML link into the selected TextFrame. ' get the character range Dim Hrange As TextRange Set Hrange = Trange.Characters(Start:=fpos, length:=msglen) ' make it an HTML link With Hrange.ActionSettings(ppMouseClick) .Action = ppActionHyperlink .Hyperlink.Address = LinkAddr End With End Sub


推荐阅读