【Excel VBA】オリジナルFunctionでコメントの内容を別のセルへ表示しよう

エクセルのセルに挿入したコメントを表示させる方法について、前回標準機能で実現できる方法を紹介しましたが、今回はFunctionプロシージャを利用し、指定セルに挿入されたコメントの内容を別のセルに表示させる方法を取り上げてみたいと思います。

すべてのコメントの内容を表示し楽々編集する


利用するオブジェクト

セル内に挿入されているコメントを表示させるためには、コメントの値が含まれるCommentオブジェクトを利用します。

Comment オブジェクト (Excel)

Commnetの内容を表示させるにはCommnetオブジェクトの「Text」プロパティを利用します。

Range(<セルを指定>).Comment.Text

例えばA1セルのコメントの値を表示させたい場合はこのように設定します。

Range("A1").Comment.Text

Functionプロシージャとして指定しよう

Functionプロシージャとして指定する場合は、Function~End Functionで囲います。
関数名は「EX_CommentDIsp」とします。こちらの値は自由に指定ができます。

Function EX_CommentDIsp(rCell As Range)
  EX_CommentDIsp = rCell.Comment.Text
End Function

はい、これでオリジナル関数が完成です!

Functionプロシージャを登録しましょう

①適当なコメントをA列に挿入します。

②[Alt] + [F11]を押下してVBAのコンソールを開きます。

③標準モジュールを追加します。
左ペインのVBAProjectを右クリックし、「挿入」、「標準モジュール」を選択します。

④右ペインのウインドウに上記の関数を入力します。

⑤エクセルのシートに戻り、追加した関数「=EX_CommentDIsp(A1)」をB1のセルへ挿入します。

B2-3のセルへドラッグします。

はい!できましたね!

A列に挿入されているコメントの内容がB列に表示されることを確認できました!
挿入されたコメントは標準では非表示となっているため確認が面倒ですが、このような関数を利用して別のセルへまとめて表示ができれば確認も楽ですね。

今後も用途別にいろいろな使い方をご紹介したいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です