パワーポイントの特定のスライドを一括で非表示スライドにする【VBAのサンプルコード】

パワーポイントの特定のスライドを一括で非表示スライドにしたいことがよくあります。

例えば以下のような研修のテキストにおいて。

印刷したくないスライドもある

テキスト用に印刷するスライドと、プレゼン用にプロジェクタに投影するスライドは違うことがあります。

非表示スライドに設定
非表示スライドを印刷する設定

いままでは、研修のつど、

  1. テキスト用に印刷したくないスライドは非表示スライドにしてから印刷する。
  2. 研修当日に一枚一枚のスライドの「非表示スライドに設定」チェックを外す。

といったことを繰り返していました。

しかし、このVBAのスクリプトを使えば、特定のスライドを一括で非表示スライドにできます。

なお、非表示にしたいスライドのタイトルには"★"が入力されているという前提です。

パワーポイントの特定のスライドを一括で非表示スライドにする
あらかじめ★マークを付けたスライドの例
Sub 一括非表示()
  Const FIND_TXT = "★"

  Dim shp As Shape
  Dim sld As Slide
 
  For Each sld In ActivePresentation.Slides
  
    For Each shp In sld.Shapes
    With shp
      If .HasTextFrame Then
        If InStr(.TextFrame.TextRange.Text, FIND_TXT) _
        > 0 Then
          sld.SlideShowTransition.Hidden = msoTrue
        End If
      End If
    End With
    Next
  
  Next

End Sub

参考にさせていただいたサイト

以上、パワーポイントの特定のスライドを一括で非表示スライドにするVBAのサンプルコードでした。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。