「パワーポイント マクロ 奇数スライドを非表示」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
奇数のスライドをまとめて非表示にする、PowerPointのマクロ・VBA(Visual Basic for Applications)コードを探している方による検索です。
私は、こういう例に遭遇したことがありませんでしたが、例えば、スライド枚数の多い学習教材をPowerPointで作るような場合に、こういう要望は上がりそうです。問題と回答が交互に存在する資料を作っていると、問題だけあるいは回答だけを非表示にしたい、という要望はありそうに思えます。
また、日本語のスライドと英語のスライドが交互に入っているようなプレゼン資料を作っていると、日本語スライドあるいは英語スライドだけを非表示にしたいという要望はありそうです。
奇数のスライドを非表示スライドにするサンプルマクロ
以下のようなマクロで、奇数のスライドだけをまとめて非表示スライドに設定することができます。
Dim i As Long
With ActivePresentation.Slides
For i = 1 To .Count
If i Mod 2 = 1 Then
.Item(i).SlideShowTransition.Hidden = msoTrue
End If
Next i
End With
End Sub
アクティブなプレゼンテーションファイルの全スライドに対してループを回して、
With ActivePresentation.Slides
For i = 1 To .Count
スライド番号を「2」で割り算したときに「1」あまったときに(奇数スライドだったときに)
If i Mod 2 = 1 Then
そのスライドを非表示に設定しています。
.Item(i).SlideShowTransition.Hidden = msoTrue
もしも、偶数スライドだけをまとめて非表示スライドにするマクロにするのなら、
If i Mod 2 = 1 Then
を
If i Mod 2 = 0 Then
にすればOKです。
全スライドを表示スライドに設定するマクロ
すべてのスライドを表示スライドに設定するのなら、以下のようなマクロです。
Dim i As Long
With ActivePresentation.Slides
For i = 1 To .Count
.Item(i).SlideShowTransition.Hidden = msoFalse
Next i
End With
End Sub
With ActivePresentation.Slides
For i = 1 To .Count
各スライドのSlideShowTransition.HiddenプロパティをmsoFalseに設定するだけです。
.Item(i).SlideShowTransition.Hidden = msoFalse
ここでは、先の奇数スライドを非表示スライドにするマクロと近い形にするために、カウンタ変数を使ったマクロを先にご紹介しましたが、もちろん、以下のようなオブジェクト変数を使ったFor Each ~ Next文にしてもOKです。
Dim sld As Slide For Each sld In ActivePresentation.Slides
sld.SlideShowTransition.Hidden = msoFalse
Next sld
End Sub
最終更新日時:2018-09-16 12:35
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » スライドショー » 奇数スライド・偶数スライドを非表示に設定するパワポマクロ