在powerpoint演示文稿中找到文本链接的位置

时间:2013-04-22 15:58:05

标签: hyperlink powerpoint-vba

我想知道是否有办法获得设置超链接的位置。在形状的情况下,它们有顶部和左侧的值,我可以选择带有幻灯片(i)。超链接的超链接,但我找不到找到我在演示文稿中找到的超链接位置的方法,因为我可以使用形状。有办法吗?

1 个答案:

答案 0 :(得分:3)

您需要查看每个超链接的类型,以确定它是超链接形状还是应用于文本的超链接。您已经知道如何处理形状,但如果它是文本,您必须走向父链以找到应用超链接的文本范围。文本范围的BoundLeft,BoundTop,BoundWidth和BoundHeight属性将告诉您文本的位置。

注意:如果您在没有服务包的PPT 2007中执行此操作,PPT将消失。噗。消失了。

Dim oHl As Hyperlink
Dim oSl As Slide
Dim oRng As TextRange
Set oSl = ActivePresentation.Slides(1)

For Each oHl In oSl.Hyperlinks
    With oHl
        If .Type = msoHyperlinkRange Then
            Debug.Print TypeName(.Parent)
            Debug.Print TypeName(.Parent.Parent)
            Debug.Print TypeName(.Parent.Parent.Parent)
            Debug.Print TypeName(.Parent.Parent.Parent.Parent)
            Set oRng = .Parent.Parent
            Debug.Print oRng.Text
            Debug.Print oRng.BoundLeft
            Debug.Print oRng.BoundTop
        Else
            ' it's a hyperlinked shape

        End If
    End With
Next