2007以降のPowerPointではスライドのレイアウト変更が、簡単にできるようになっています。
ですが初期状態のPowerPointでは、ほとんど使うことのなさそうなレイアウトまで下図のように表示され、
ちょっと鬱陶しいと感じます。
そこで私は、不要なレイアウトを削除して、レイアウト変更メニューに、いらないレイアウトは表示されないようにしています。
スライドマスターの編集画面から不要なレイアウトを手作業で削除することもできますが、私はこの削除をマクロで行っています。そのマクロをご紹介しておきます。
不要なレイアウトを削除するサンプルマクロ
以下のマクロを実行すると、
タイトル スライド
タイトルとコンテンツ
セクション見出し
白紙
だけを残して他のレイアウトが削除されます。
Dim i As Long
With ActivePresentation.SlideMaster.CustomLayouts
For i = .Count To 1 Step -1
With .Item(i)
Select Case .Name
Case _
"タイトル スライド", _
"タイトルとコンテンツ", _
"セクション見出し", _
"白紙"
''以上のレイアウトは削除しない
Case Else
.Delete
End Select
End With
Next i
End Sub
サンプルマクロの解説
スライドマスターを表すMasterオブジェクトを、PresentationオブジェクトのSlideMasterプロパティで取得して、
MasterオブジェクトのCustomLayoutsプロパティで取得した、CustomLayoutsコレクションオブジェクトに対して、
For~Nextループを後ろから回し、
With ActivePresentation.SlideMaster.CustomLayouts
For i = .Count To 1 Step -1
CustomLayoutオブジェクトのNameプロパティで
レイアウト名を調べて、
With .Item(i)
Select Case .Name
レイアウト名が「タイトル スライド」「タイトルとコンテンツ」「セクション見出し」「白紙」の場合は何もせず、
Case _
"タイトル スライド", _
"タイトルとコンテンツ", _
"セクション見出し", _
"白紙"
''以上のレイアウトは削除しない
それ以外の名前だったときに、削除しています。
Case Else
.Delete
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Presentation・プレゼンテーション » 不要なレイアウトを削除するPowerPointマクロ