Excel では、従来の「メモ(旧コメント)」に加えて、**スレッドコメント(新しいコメント)**という機能が導入されました。
このスレッドコメントは、VBAからも操作が可能であり、特定のセルにコメントを追加することでチーム内のやり取りやメモを自動化することができます。
この記事では、VBAでスレッドコメントをセルに追加する方法について、わかりやすく解説いたします。
目次
スレッドコメントとは?
- Excel 2019以降またはMicrosoft 365で使用可能なチャット形式のコメント
 - 従来の「Comment」ではなく、「CommentThreaded」というプロパティで操作
 - 通常のコメントとは異なり、複数人で返信できるスレッド型
 
VBAコード:スレッドコメントをセルに追加する
Sub AddThreadedCommentIfNone()
    Dim targetCell As Range
    Set targetCell = Range("D4")
    If targetCell.CommentThreaded Is Nothing Then
        targetCell.AddCommentThreaded "このセルに新しいコメントを追加しました。"
    End If
End Sub
コードの解説
| 処理 | 内容 | 
|---|---|
Range("D4") | コメントを追加したい対象のセル | 
CommentThreaded Is Nothing | スレッドコメントが未設定かどうかを確認 | 
AddCommentThreaded | スレッドコメントを追加するメソッド | 
※ Excel のバージョンが古い場合は CommentThreaded プロパティは使用できません。事前にバージョン確認が必要です。
応用ポイント
- コメントがすでに存在する場合は上書きせずにスキップします。
 - 既存のコメントを削除して新しく追加したい場合は、
DeleteCommentThreadedで削除可能です。 - コメント内容を動的に変えたい場合は、他セルの値を 
AddCommentThreadedに渡すことで対応可能です。 
使用例
- データチェック時に、空欄セルへ自動でコメントを入れたい
 - 担当者名や処理フローをスレッド形式で記録したい
 - コメントが未設定のセルにのみ追加したい
 
まとめ|新しいコメント機能もVBAで自動化可能
Excelのスレッドコメント(新しいコメント)は、VBAでも操作可能であり、コメントの有無を確認した上で自動的に追加することができます。
特に複数人で共有するシートでは、コメントを通じたやりとりの自動化は非常に有効です。
スレッドコメントを活用することで、データとコミュニケーションを同時に管理することができる点が大きな利点です。
