「powerpoint マクロ 読み取り専用で開く」
という検索キーワードで、このサイト『インストラクターのネタ帳』へアクセスがありました。
読み取り専用で開くサンプルマクロ
以下のSubプロシージャを実行すると、Cドライブのtempフォルダーにあるsample.pptxが読み取り専用で開かれます。Presentations.Open _
"C:\temp\sample.pptx", _
ReadOnly:=msoTrue
End Sub
Presentations.Openの引数ReadOnlyで読み取り専用を指定できる
PresentationsコレクションのOpenメソッドには、読み取り専用で開くかどうかを指定できる引数ReadOnlyがあります。
この引数ReadOnlyに、msoTrueや論理値Trueを指定すれば、読み取り専用で開けるということです。
Presentations.Openでは名前付き引数を使いましょう
読み取り専用を指定する引数は、第2引数ですから、
Presentations.Open _
"C:\temp\sample.pptx", _
msoTrue
といった標準引数で指定したコードでも、読み取り専用で開くことができます。
しかし、Presentations.OpenメソッドにはMsoTriState列挙型を指定できる引数が複数ありますから、
上述のSubプロシージャで、
Presentations.Open _
"C:\temp\sample.pptx", _
ReadOnly:=msoTrue
としたとおり引数名を明示するほうが、可読性が上がります。
拙著『いちばんやさしいExcel VBAの教本』のLesson 56"マクロ記録で使われる「名前付き引数」について学習しましょう"で、名前付き引数と標準引数の使い分けについて触れています。
PowerPoint VBAで読み取り専用で開くコードは、名前付き引数を使うほうが読みやすくなる一例です。
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Presentation・プレゼンテーション » Presentations.Openで読み取り専用を指定して開く