【问题标题】:Variables in MS power pointMS 功率点中的变量
【发布时间】:2020-07-04 04:30:08
【问题描述】:

您好,我正在创建一个 powerpoint 2013 演示文稿,其中我们将在许多幻灯片上使用一些超链接。超链接指向外部站点。这台服务器可能稍后会更改,然后我需要单独更改所有这些超链接,这很痛苦。

有没有一种方法可以在 power point 中定义一个变量(可能在 VBA 部分),然后使用这个变量(可能是基本网站地址)来构建幻灯片中的超链接。这样如果网站改变了,那么我只需要改变这个变量的值。这有可能吗?如果可以,怎么做?

感谢您的帮助!

【问题讨论】:

    标签: vba powerpoint


    【解决方案1】:

    没有办法将所需的链接地址保存为域代码,就像您可能在 Word 中所做的那样,但如果您不介意运行一些代码来进行修复,这将让您用任何其他文本替换任何特定的文本块。您提供这些位。在下面的示例中,我将 pptools 替换为 pptfaq,以将所有指向 http://www.pptools.com 的超链接转换为 http://www.pptfaq.com

    根据需要编辑前两行:

    Const sOldHyperlink As String = "pptools"
    Const sNewHyperlink As String = "pptfaq"
    
    Sub ChangeHyperlinks()
    
        Dim oSl As Slide
        Dim oHl As Hyperlink
    
        For Each oSl In ActivePresentation.Slides
            For Each oHl In oSl.Hyperlinks
                oHl.Address = Replace(oHl.Address, sOldHyperlink, sNewHyperlink)
            Next
        Next
    
    End Sub
    

    【讨论】:

    • 感谢您的回答,但是您如何在实际的 power point 演示文稿中定义变量 oS1 和 oH1 呢?如何在 PowerPoint 中使用这些变量创建一个字符串,以便该宏可以替换部分字符串。
    • 我试过这个宏,它的工作就像轻而易举!感谢史蒂夫的帮助。
    • oSl 和 oHl 是对象变量,分别保存幻灯片和超链接对象。两个 For Each 循环分别为演示文稿中的每张幻灯片和每张幻灯片上的每个超链接设置 oSl 和 oHl。简而言之,它们是由代码使用和设置的;你不需要改变它们。
    猜你喜欢
    • 1970-01-01
    • 2014-12-18
    • 1970-01-01
    • 2016-04-30
    • 2015-09-29
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 2017-02-13
    相关资源
    最近更新 更多