Home » パワーポイントマクロ・PowerPoint VBAの使い方 » プレースホルダー » VBAでタイトルスライドの文字列を取得する

VBAでタイトルスライドの文字列を取得する

対象:PowerPoint2003, PowerPoint2007, PowerPoint2010

たくさんのスライドが含まれたプレゼンテーションファイルを作成する場合、章トビラに該当するスライドに、タイトルスライドを使うということがあります。

その場合に、それらのタイトルスライドの文字列だけを取得して、目次スライド的なものを作りたいと思うこともあります。

章扉的スライドの枚数が少なければ、手作業で文字列をコピペすれば済みますが、タイトルスライドの枚数が多いと、結構、面倒な作業です。

そんなときに有効なコードをご紹介しておきましょう。

[スポンサードリンク]

タイトルスライドの文字列をイミディエイトウィンドウに出力するサンプルマクロ

以下のマクロを実行すると、イミディエイトウィンドウに、タイトルスライドのスライド番号とタイトル文字列が出力されます。

Sub タイトルスライドのスライド番号とタイトル文字列を取得する()
 Dim sld As Slide 
 For Each sld In ActivePresentation.Slides
  With sld

   If .Layout = ppLayoutTitle Then
    Debug.Print _
      .SlideNumber & vbTab & _
      .Shapes.Title.TextFrame.TextRange.Text
   End If

  End With
 Next
End Sub

サンプルマクロの解説

アクティブなプレゼンテーションファイルの全SlideにFor Each~Nextループを回して、
 For Each sld In ActivePresentation.Slides

もしもタイトルスライドだったときに、
  With sld
   If .Layout = ppLayoutTitle Then

スライド番号とタイトル文字列をイミディエイトウィンドウに出力しています。
    Debug.Print _
      .SlideNumber & vbTab & _
      .Shapes.Title.TextFrame.TextRange.Text

ShapesコレクションオブジェクトのTitleプロパティを使うとタイトルプレースホルダーを取得できるところが、ポイントの一つでしょうか。

スライドを新規に追加して、上記のマクロを実行してイミディエイトウィンドウに出力された文字列をコピペしてやれば、タイトルスライドの文字列だけが表示された目次スライドのできあがりです。

最終更新日時:2020-04-07 06:26

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » プレースホルダー » VBAでタイトルスライドの文字列を取得する

「プレースホルダー」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.