「パワーポイント マクロ ハイパーリンク削除」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
PowerPointでハイパーリンクを削除するマクロを探している方による検索です。
PowerPointでプレゼン資料を作成しているときに、Web上から文字列をコピペしたときに、ハイパーリンクが含まれていると、自動的にハイパーリンクが設定されます。
これを削除したいということでしょうか。
オブジェクトブラウザで「hyperlink」を検索してみると、SlideオブジェクトやSlideRangeオブジェクトがHyperlinksプロパティを持っていることがわかります。
HyperlinksプロパティでHyperlinksコレクションオブジェクトを取得して、Hyperlinkオブジェクトを順番に削除すればよさそうです。
アクティブなスライド上のハイパーリンクを削除するのなら、SlideRangeオブジェクトのHyperlinkオブジェクトを削除する以下のようなマクロです。
Dim hlk As Hyperlink
With ActiveWindow.Selection.SlideRange
For Each hlk In .Hyperlinks
hlk.Delete
Next hlk
End With
End SubWebからコピペをして、上記のマクロで、すぐにハイパーリンクを削除するほうが無難だと感じますが、すべてのスライドのハイパーリンクをまとめて削除することもできます。
すべてのスライドのハイパーリンクを削除するのなら、SledesコレクションオブジェクトからSlideオブジェクトを取得して、Hyperlinkオブジェクトを削除すればOKです。
Dim sld As Slide
Dim hlk As Hyperlink
For Each sld In ActivePresentation.Slides
For Each hlk In sld.Hyperlinks
hlk.Delete
Next hlk
Next sld
End SubHome » パワーポイントマクロ・PowerPoint VBAの使い方 » ハイパーリンクを削除するPowerPointマクロ