
PowerPoint VBAを使い、ガイドを上下左右に追加してマージン(余白)を作るマクロをご紹介します。フォームにスライドの境界線から何cm空けた位置にガイドを引きたいかを入力するだけで、ガイドが自動で追加されるマクロです。
通常PowerPointでガイドを追加するときは、右クリックメニューの「グリッドとガイド」から追加し、ドラッグしながら指定の場所へ移動させます。スライドの上下左右にガイドを追加するときは、この動作を4回繰り返さなければなりません。
しかも、ガイドの移動時に表示される値がスライドサイズのセンターからの距離になっているため、非常に設定がしづらい仕様となっています。
ガイドを上下左右に追加するマクロ
コード
Sub ガイドを追加しマージンを作成()
Dim margin As String
Dim msg As String
Dim w As Double
Dim h As Double
Dim guideColor As Long
'ガイドをすべて削除
Call ガイドをすべて削除
'マージン入力フォーム
margin = InputBox("マージンを入力してください。" & vbCrLf & _
"(単位: mm)")
'数値以外が入力された場合はマクロ終了
If IsNumeric(margin) Then
ElseIf margin = "" Then
Exit Sub
Else
msg = "数値を入力してください。"
MsgBox msg
Exit Sub
End If
'マージンを「mm」に変換
margin = Round(margin * 72 / 25.4, 0)
'スライドサイズ取得
w = ActivePresentation.PageSetup.SlideWidth
h = ActivePresentation.PageSetup.SlideHeight
'ガイドを表示
Application.DisplayGuides = True
'ガイドの色
guideColor = VBA.RGB(164, 163, 164)
'マージンの位置にガイドを追加
With ActivePresentation.Guides
'上ガイドを追加
.Add(ppHorizontalGuide, margin).Color = guideColor
'下ガイドを追加
.Add(ppHorizontalGuide, h - margin).Color = guideColor
'左ガイドを追加
.Add(ppVerticalGuide, margin).Color = guideColor
'右ガイドを追加
.Add(ppVerticalGuide, w - margin).Color = guideColor
'センターガイドを追加
.Add(ppHorizontalGuide, h / 2).Color = guideColor
.Add(ppVerticalGuide, w / 2).Color = guideColor
End With
End Sub
Sub ガイドをすべて削除()
Dim i As Long
With Application.ActivePresentation
'ガイドの数だけ処理を繰り返す
If .Guides.Count > 0 Then
For i = .Guides.Count To 1 Step -1
'ガイドを削除
.Guides(i).Delete
Next
End If
End With
End Subマージンを「cm」で入力したければ、「margin = Round(margin * 720 / 25.4, 0)」に変更してください。
すでに追加されているガイドをすべて削除するため、センターガイドも新たに追加しています。ガイドを削除したくなければ、「Call ガイドをすべて削除」を削除してください。
ガイドの色を設定する
PowerPointのガイドの色は10色の中から選べます。

それぞれのRGB値は以下の通りです。お好きな色を設定してください。
'グレー色 guideColor = VBA.RGB(164, 163, 164) '赤色 guideColor = VBA.RGB(242, 107, 67) 'オレンジ色 guideColor = VBA.RGB(251, 174, 64) '黄色 guideColor = VBA.RGB(253, 229, 60) '黄緑色 guideColor = VBA.RGB(159, 204, 59) '水色 guideColor = VBA.RGB(90, 203, 240) '青色 guideColor = VBA.RGB(84, 126, 191) '紫色 guideColor = VBA.RGB(195, 94, 164) '黒色 guideColor = VBA.RGB(0, 0, 0) '白色 guideColor = VBA.RGB(255, 255, 255)
実行方法
フォームにマージンの値を入力して「OK」をクリックします。

A4サイズのスライドにマージンを「15mm」で設定しました。

- PowerPoint 2016 for Macでは動作しません。






















