【VBA入門】スレッドコメントを削除する方法|作成者確認と安全な削除処理

Excelの「スレッドコメント(新しいコメント)」は、複数のユーザーがやり取りできる形式のコメント機能です。
本記事では、VBAを使ってスレッドコメントの内容を確認し、指定された作成者のコメントのみを削除する方法について、実用的なコード例とともに解説いたします。


目次

スレッドコメントの基本構造

スレッドコメントは、従来の .Comment とは異なり、CommentThreaded プロパティで管理されます。

このプロパティからは、下記の情報が取得できます。

  • コメントの対象セル(.Parent
  • 作成者名(.Author.Name
  • コメント本文(.Text

VBAでスレッドコメントの詳細を確認する

まずは、アクティブセルに紐づくスレッドコメントの詳細を確認するコードをご紹介いたします。

With Range("C3").CommentThreaded
    Debug.Print "アドレス:" & .Parent.Address
    Debug.Print "作成者:" & .Author.Name
    Debug.Print "コメント内容:" & .Text
End With

実行すると、「イミディエイトウィンドウ」に対象セルのアドレス、作成者名、コメントの内容が表示されます。


指定した作成者のコメントだけを削除する

たとえば、作成者が「森 林男」の場合のみ削除したいというケースでは、次のような処理を記述します。

If Range("C3").CommentThreaded.Author.Name = "森 林男" Then
    Range("C3").CommentThreaded.Delete
End If

コメントが存在しない場合や、作成者が異なる場合は処理が行われません。


実務での使用例

使用シーン処理内容
特定ユーザーのコメントを一括削除作成者名で判定し削除
コメント確認後、自動削除内容や対象セルで条件分岐
マクロによる定期的なメンテナンスコメント一覧出力+削除

注意点と補足

項目内容
Office 365 専用機能.CommentThreaded は Excel 2019 以降対応
権限の制限ありコメントの作成者以外は削除できないことがあります
エラー処理推奨コメントが存在しない場合に備えて On Error を使うと安全です

まとめ|VBAでスレッドコメントの削除も自動化できる

スレッドコメントは Excel の共同作業で便利な機能ですが、内容の整理や不要なコメントの削除が必要になる場面も多くあります。

VBAを使えば、作成者を確認しながら削除処理を自動化でき、作業の効率化や管理精度の向上に貢献できます。
エラー対策を含めた安全な処理を心がけることで、スクリプトの信頼性も高まります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次