「vba パワーポイント コメントを消す」
という検索キーワードで、このサイト・インストラクターのネタ帳のアクセスがありましたので、いつものようにマクロを作ってみました。
アクティブなスライドからコメントを削除するPowerPointマクロと、
アクティブなプレゼンテーションファイルの全スライドからコメントを削除するPowerPointマクロです。
アクティブスライドのコメントを削除するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブなスライド上のコメントがすべて削除されます。
Dim i As Long With ActiveWindow.Selection.SlideRange.Comments
For i = .Count To 1 Step -1
.Item(i).Delete
Next i
End With
End Sub
PowerPoint VBAでは、削除など、コレクションに含まれる単一オブジェクトの数がループの中で変化する処理を、For Each~Nextループで行おうとすると、上手くいきません。
そのため上記のプロシージャも、
For i = .Count To 1 Step -1
と、For~NextループをStep -1で回して、削除を行っています。
「ActiveWindow.Selection.SlideRange」というオブジェクト式は、PowerPoint VBAでアクティブなスライドを取得する定番の書き方です。
アクティブプレゼンテーションのコメントを削除するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブなプレゼンテーションファイル上の全コメントが削除されます。
Dim sld As Slide
Dim i As Long For Each sld In ActivePresentation.Slides
With sld.Comments
For i = .Count To 1 Step -1
.Item(i).Delete
Next i
End With
Next sld
End Sub
アクティブプレゼンテーションの全スライドにFor Each~Nextループを回して、
For Each sld In ActivePresentation.Slides
先のマクロと同じく、Step -1のFor~Nextループで、
With sld.Comments
For i = .Count To 1 Step -1
コメントを順番に削除しています。
.Item(i).Delete
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » コメントを削除するPowerPointマクロ