ハイパーリンクが設定されている位置を取得する方法があれば知りたいです。Shapes の場合、上と左の値があり、Slides(i).Hyperlinks でハイパーリンクを選択できますが、プレゼンテーションで見つけたハイパーリンクの位置を見つける方法が見つかりません。形状。それを行う方法はありますか?
1102 次
1 に答える
4
各ハイパーリンクの種類を調べて、それがハイパーリンクされた図形であるか、テキストに適用されたハイパーリンクであるかを判断する必要があります。図形の処理方法は既に理解していますが、それがテキストの場合は、ハイパーリンクが適用されているテキスト範囲を見つけるために、親チェーンをたどる必要があります。textrange の 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
于 2013-04-22T19:30:50.487 に答える