「vba パワーポイント 上書き」
「パワーポイント 保存 vba」
という検索で、このサイト・インストラクターのネタ帳へのアクセスが時折あることに気づきました。
保存・上書き保存をするPowerPoint VBA(Visual Basic for Applications)のコードを探している方による検索です。
参考になりそうな、上書き保存をするマクロをご紹介しておきます。
全ファイルを上書き保存するサンプルマクロ
以下のようなマクロで、開いているすべてのプレゼンテーションファイルを上書き保存することができます。
Dim prs As Presentation On Error Resume Next
For Each prs In Presentations
prs.Save
Next prs
End Sub
すべてのプレゼンテーションファイルにループを回して、
For Each prs In Presentations
PresentationオブジェクトのSaveメソッドで保存をしています。
prs.Save
一度も保存されていないファイルでいきなりSaveメソッドを実行しようとするとエラーとなってしまうので、ループ処理に入る前に
On Error Resume Next
を入れています。
PresentationsコレクションにSaveメソッドは存在しない
Word VBAには、開いているすべての文書を一気に上書き保存するDocuments.Saveメソッドが存在することをご紹介しました。
PowerPoint VBAにも、同じようなメソッド、例えばPresentations.Saveメソッドが存在するかもしれないと考える方がいらっしゃるかもしれません。
オブジェクトブラウザーで、非表示のメンバーも表示して、確認してみましょう。
上図のとおり、PresentationsコレクションオブジェクトにSaveメソッドは存在していません。
やっぱり、ループ処理をして個々のPresentationオブジェクトのSaveメソッドを実行するしかありません。
ここでも、一括保存するコマンドが存在していないので、該当するメソッドも存在していないというルールが当てはまっています。
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Presentation・プレゼンテーション » すべてのプレゼンテーションファイルを上書き保存するパワポマクロ