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でも操作可能であり、コメントの有無を確認した上で自動的に追加することができます。
特に複数人で共有するシートでは、コメントを通じたやりとりの自動化は非常に有効です。
スレッドコメントを活用することで、データとコミュニケーションを同時に管理することができる点が大きな利点です。