PowerPointにはどうやら図形の印刷をしない設定がないっぽい
なので下図の様に余白を図形で作って印刷時に表示しないようにして対処してみた。
下図の様に余白を図形を作り、"shp余白"
と命名。
作り方は四角形2つを重ねて、図形の結合から「型抜き」する。
作った余白を全スライドに複製する
Sub ppShape複製()
ActivePresentation.Slides(1).Shapes("shp余白").Copy
Dim sld As PowerPoint.Slide
Dim shp As PowerPoint.Shape
For Each sld In ActivePresentation.Slides
sld.Shapes.Paste
Next
End Sub
余白の表示切替をする
Sub pp余白の表示切替()
Const shpName = "shp余白"
Static v
v = ActivePresentation.Slides(1).Shapes(shpName).Visible
Call ppShape非表示にする(shpName, Not (v))
End Sub
Sub ppShape非表示にする(shpName As String, Is表示する As Boolean)
Dim sld As PowerPoint.Slide
Dim shp As PowerPoint.Shape
For Each sld In ActivePresentation.Slides
For Each shp In sld.Shapes
If shp.Name = shpName Then
shp.Visible = Is表示する
Exit For
End If
Next
Next
End Sub
印刷時に余白を非表示にする
Excelと違って印刷イベントがないのでpdf出力マクロに図形の非表示プロシージャを入れておく。